<!DOCTYPE html>

<html lang="en">
<head><meta charset="utf-8"/>
<meta content="width=device-width, initial-scale=1.0" name="viewport"/>
<title>Untitled19</title><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.1.10/require.min.js"></script>
<style type="text/css">
    pre { line-height: 125%; }
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
.highlight .hll { background-color: var(--jp-cell-editor-active-background) }
.highlight { background: var(--jp-cell-editor-background); color: var(--jp-mirror-editor-variable-color) }
.highlight .c { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment */
.highlight .err { color: var(--jp-mirror-editor-error-color) } /* Error */
.highlight .k { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword */
.highlight .o { color: var(--jp-mirror-editor-operator-color); font-weight: bold } /* Operator */
.highlight .p { color: var(--jp-mirror-editor-punctuation-color) } /* Punctuation */
.highlight .ch { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment.Hashbang */
.highlight .cm { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment.Multiline */
.highlight .cp { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment.Preproc */
.highlight .cpf { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment.PreprocFile */
.highlight .c1 { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment.Single */
.highlight .cs { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment.Special */
.highlight .kc { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword.Constant */
.highlight .kd { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword.Declaration */
.highlight .kn { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword.Namespace */
.highlight .kp { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword.Pseudo */
.highlight .kr { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword.Reserved */
.highlight .kt { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword.Type */
.highlight .m { color: var(--jp-mirror-editor-number-color) } /* Literal.Number */
.highlight .s { color: var(--jp-mirror-editor-string-color) } /* Literal.String */
.highlight .ow { color: var(--jp-mirror-editor-operator-color); font-weight: bold } /* Operator.Word */
.highlight .pm { color: var(--jp-mirror-editor-punctuation-color) } /* Punctuation.Marker */
.highlight .w { color: var(--jp-mirror-editor-variable-color) } /* Text.Whitespace */
.highlight .mb { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Bin */
.highlight .mf { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Float */
.highlight .mh { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Hex */
.highlight .mi { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Integer */
.highlight .mo { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Oct */
.highlight .sa { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Affix */
.highlight .sb { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Backtick */
.highlight .sc { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Char */
.highlight .dl { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Delimiter */
.highlight .sd { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Doc */
.highlight .s2 { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Double */
.highlight .se { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Escape */
.highlight .sh { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Heredoc */
.highlight .si { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Interpol */
.highlight .sx { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Other */
.highlight .sr { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Regex */
.highlight .s1 { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Single */
.highlight .ss { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Symbol */
.highlight .il { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Integer.Long */
  </style>
<style type="text/css">
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*
 * Mozilla scrollbar styling
 */

/* use standard opaque scrollbars for most nodes */
[data-jp-theme-scrollbars='true'] {
  scrollbar-color: rgb(var(--jp-scrollbar-thumb-color))
    var(--jp-scrollbar-background-color);
}

/* for code nodes, use a transparent style of scrollbar. These selectors
 * will match lower in the tree, and so will override the above */
[data-jp-theme-scrollbars='true'] .CodeMirror-hscrollbar,
[data-jp-theme-scrollbars='true'] .CodeMirror-vscrollbar {
  scrollbar-color: rgba(var(--jp-scrollbar-thumb-color), 0.5) transparent;
}

/* tiny scrollbar */

.jp-scrollbar-tiny {
  scrollbar-color: rgba(var(--jp-scrollbar-thumb-color), 0.5) transparent;
  scrollbar-width: thin;
}

/* tiny scrollbar */

.jp-scrollbar-tiny::-webkit-scrollbar,
.jp-scrollbar-tiny::-webkit-scrollbar-corner {
  background-color: transparent;
  height: 4px;
  width: 4px;
}

.jp-scrollbar-tiny::-webkit-scrollbar-thumb {
  background: rgba(var(--jp-scrollbar-thumb-color), 0.5);
}

.jp-scrollbar-tiny::-webkit-scrollbar-track:horizontal {
  border-left: 0 solid transparent;
  border-right: 0 solid transparent;
}

.jp-scrollbar-tiny::-webkit-scrollbar-track:vertical {
  border-top: 0 solid transparent;
  border-bottom: 0 solid transparent;
}

/*
 * Lumino
 */

.lm-ScrollBar[data-orientation='horizontal'] {
  min-height: 16px;
  max-height: 16px;
  min-width: 45px;
  border-top: 1px solid #a0a0a0;
}

.lm-ScrollBar[data-orientation='vertical'] {
  min-width: 16px;
  max-width: 16px;
  min-height: 45px;
  border-left: 1px solid #a0a0a0;
}

.lm-ScrollBar-button {
  background-color: #f0f0f0;
  background-position: center center;
  min-height: 15px;
  max-height: 15px;
  min-width: 15px;
  max-width: 15px;
}

.lm-ScrollBar-button:hover {
  background-color: #dadada;
}

.lm-ScrollBar-button.lm-mod-active {
  background-color: #cdcdcd;
}

.lm-ScrollBar-track {
  background: #f0f0f0;
}

.lm-ScrollBar-thumb {
  background: #cdcdcd;
}

.lm-ScrollBar-thumb:hover {
  background: #bababa;
}

.lm-ScrollBar-thumb.lm-mod-active {
  background: #a0a0a0;
}

.lm-ScrollBar[data-orientation='horizontal'] .lm-ScrollBar-thumb {
  height: 100%;
  min-width: 15px;
  border-left: 1px solid #a0a0a0;
  border-right: 1px solid #a0a0a0;
}

.lm-ScrollBar[data-orientation='vertical'] .lm-ScrollBar-thumb {
  width: 100%;
  min-height: 15px;
  border-top: 1px solid #a0a0a0;
  border-bottom: 1px solid #a0a0a0;
}

.lm-ScrollBar[data-orientation='horizontal']
  .lm-ScrollBar-button[data-action='decrement'] {
  background-image: var(--jp-icon-caret-left);
  background-size: 17px;
}

.lm-ScrollBar[data-orientation='horizontal']
  .lm-ScrollBar-button[data-action='increment'] {
  background-image: var(--jp-icon-caret-right);
  background-size: 17px;
}

.lm-ScrollBar[data-orientation='vertical']
  .lm-ScrollBar-button[data-action='decrement'] {
  background-image: var(--jp-icon-caret-up);
  background-size: 17px;
}

.lm-ScrollBar[data-orientation='vertical']
  .lm-ScrollBar-button[data-action='increment'] {
  background-image: var(--jp-icon-caret-down);
  background-size: 17px;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/

.lm-Widget {
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
}

.lm-Widget.lm-mod-hidden {
  display: none !important;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

.lm-AccordionPanel[data-orientation='horizontal'] > .lm-AccordionPanel-title {
  /* Title is rotated for horizontal accordion panel using CSS */
  display: block;
  transform-origin: top left;
  transform: rotate(-90deg) translate(-100%);
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/

.lm-CommandPalette {
  display: flex;
  flex-direction: column;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.lm-CommandPalette-search {
  flex: 0 0 auto;
}

.lm-CommandPalette-content {
  flex: 1 1 auto;
  margin: 0;
  padding: 0;
  min-height: 0;
  overflow: auto;
  list-style-type: none;
}

.lm-CommandPalette-header {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.lm-CommandPalette-item {
  display: flex;
  flex-direction: row;
}

.lm-CommandPalette-itemIcon {
  flex: 0 0 auto;
}

.lm-CommandPalette-itemContent {
  flex: 1 1 auto;
  overflow: hidden;
}

.lm-CommandPalette-itemShortcut {
  flex: 0 0 auto;
}

.lm-CommandPalette-itemLabel {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.lm-close-icon {
  border: 1px solid transparent;
  background-color: transparent;
  position: absolute;
  z-index: 1;
  right: 3%;
  top: 0;
  bottom: 0;
  margin: auto;
  padding: 7px 0;
  display: none;
  vertical-align: middle;
  outline: 0;
  cursor: pointer;
}
.lm-close-icon:after {
  content: 'X';
  display: block;
  width: 15px;
  height: 15px;
  text-align: center;
  color: #000;
  font-weight: normal;
  font-size: 12px;
  cursor: pointer;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/

.lm-DockPanel {
  z-index: 0;
}

.lm-DockPanel-widget {
  z-index: 0;
}

.lm-DockPanel-tabBar {
  z-index: 1;
}

.lm-DockPanel-handle {
  z-index: 2;
}

.lm-DockPanel-handle.lm-mod-hidden {
  display: none !important;
}

.lm-DockPanel-handle:after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
}

.lm-DockPanel-handle[data-orientation='horizontal'] {
  cursor: ew-resize;
}

.lm-DockPanel-handle[data-orientation='vertical'] {
  cursor: ns-resize;
}

.lm-DockPanel-handle[data-orientation='horizontal']:after {
  left: 50%;
  min-width: 8px;
  transform: translateX(-50%);
}

.lm-DockPanel-handle[data-orientation='vertical']:after {
  top: 50%;
  min-height: 8px;
  transform: translateY(-50%);
}

.lm-DockPanel-overlay {
  z-index: 3;
  box-sizing: border-box;
  pointer-events: none;
}

.lm-DockPanel-overlay.lm-mod-hidden {
  display: none !important;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/

.lm-Menu {
  z-index: 10000;
  position: absolute;
  white-space: nowrap;
  overflow-x: hidden;
  overflow-y: auto;
  outline: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.lm-Menu-content {
  margin: 0;
  padding: 0;
  display: table;
  list-style-type: none;
}

.lm-Menu-item {
  display: table-row;
}

.lm-Menu-item.lm-mod-hidden,
.lm-Menu-item.lm-mod-collapsed {
  display: none !important;
}

.lm-Menu-itemIcon,
.lm-Menu-itemSubmenuIcon {
  display: table-cell;
  text-align: center;
}

.lm-Menu-itemLabel {
  display: table-cell;
  text-align: left;
}

.lm-Menu-itemShortcut {
  display: table-cell;
  text-align: right;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/

.lm-MenuBar {
  outline: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.lm-MenuBar-content {
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: row;
  list-style-type: none;
}

.lm-MenuBar-item {
  box-sizing: border-box;
}

.lm-MenuBar-itemIcon,
.lm-MenuBar-itemLabel {
  display: inline-block;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/

.lm-ScrollBar {
  display: flex;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.lm-ScrollBar[data-orientation='horizontal'] {
  flex-direction: row;
}

.lm-ScrollBar[data-orientation='vertical'] {
  flex-direction: column;
}

.lm-ScrollBar-button {
  box-sizing: border-box;
  flex: 0 0 auto;
}

.lm-ScrollBar-track {
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
  flex: 1 1 auto;
}

.lm-ScrollBar-thumb {
  box-sizing: border-box;
  position: absolute;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/

.lm-SplitPanel-child {
  z-index: 0;
}

.lm-SplitPanel-handle {
  z-index: 1;
}

.lm-SplitPanel-handle.lm-mod-hidden {
  display: none !important;
}

.lm-SplitPanel-handle:after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
}

.lm-SplitPanel[data-orientation='horizontal'] > .lm-SplitPanel-handle {
  cursor: ew-resize;
}

.lm-SplitPanel[data-orientation='vertical'] > .lm-SplitPanel-handle {
  cursor: ns-resize;
}

.lm-SplitPanel[data-orientation='horizontal'] > .lm-SplitPanel-handle:after {
  left: 50%;
  min-width: 8px;
  transform: translateX(-50%);
}

.lm-SplitPanel[data-orientation='vertical'] > .lm-SplitPanel-handle:after {
  top: 50%;
  min-height: 8px;
  transform: translateY(-50%);
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/

.lm-TabBar {
  display: flex;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.lm-TabBar[data-orientation='horizontal'] {
  flex-direction: row;
  align-items: flex-end;
}

.lm-TabBar[data-orientation='vertical'] {
  flex-direction: column;
  align-items: flex-end;
}

.lm-TabBar-content {
  margin: 0;
  padding: 0;
  display: flex;
  flex: 1 1 auto;
  list-style-type: none;
}

.lm-TabBar[data-orientation='horizontal'] > .lm-TabBar-content {
  flex-direction: row;
}

.lm-TabBar[data-orientation='vertical'] > .lm-TabBar-content {
  flex-direction: column;
}

.lm-TabBar-tab {
  display: flex;
  flex-direction: row;
  box-sizing: border-box;
  overflow: hidden;
  touch-action: none; /* Disable native Drag/Drop */
}

.lm-TabBar-tabIcon,
.lm-TabBar-tabCloseIcon {
  flex: 0 0 auto;
}

.lm-TabBar-tabLabel {
  flex: 1 1 auto;
  overflow: hidden;
  white-space: nowrap;
}

.lm-TabBar-tabInput {
  user-select: all;
  width: 100%;
  box-sizing: border-box;
}

.lm-TabBar-tab.lm-mod-hidden {
  display: none !important;
}

.lm-TabBar-addButton.lm-mod-hidden {
  display: none !important;
}

.lm-TabBar.lm-mod-dragging .lm-TabBar-tab {
  position: relative;
}

.lm-TabBar.lm-mod-dragging[data-orientation='horizontal'] .lm-TabBar-tab {
  left: 0;
  transition: left 150ms ease;
}

.lm-TabBar.lm-mod-dragging[data-orientation='vertical'] .lm-TabBar-tab {
  top: 0;
  transition: top 150ms ease;
}

.lm-TabBar.lm-mod-dragging .lm-TabBar-tab.lm-mod-dragging {
  transition: none;
}

.lm-TabBar-tabLabel .lm-TabBar-tabInput {
  user-select: all;
  width: 100%;
  box-sizing: border-box;
  background: inherit;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/

.lm-TabPanel-tabBar {
  z-index: 1;
}

.lm-TabPanel-stackedPanel {
  z-index: 0;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-Collapse {
  display: flex;
  flex-direction: column;
  align-items: stretch;
}

.jp-Collapse-header {
  padding: 1px 12px;
  background-color: var(--jp-layout-color1);
  border-bottom: solid var(--jp-border-width) var(--jp-border-color2);
  color: var(--jp-ui-font-color1);
  cursor: pointer;
  display: flex;
  align-items: center;
  font-size: var(--jp-ui-font-size0);
  font-weight: 600;
  text-transform: uppercase;
  user-select: none;
}

.jp-Collapser-icon {
  height: 16px;
}

.jp-Collapse-header-collapsed .jp-Collapser-icon {
  transform: rotate(-90deg);
  margin: auto 0;
}

.jp-Collapser-title {
  line-height: 25px;
}

.jp-Collapse-contents {
  padding: 0 12px;
  background-color: var(--jp-layout-color1);
  color: var(--jp-ui-font-color1);
  overflow: auto;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/* This file was auto-generated by ensureUiComponents() in @jupyterlab/buildutils */

/**
 * (DEPRECATED) Support for consuming icons as CSS background images
 */

/* Icons urls */

:root {
  --jp-icon-add-above: url();
  --jp-icon-add-below: url();
  --jp-icon-add: url();
  --jp-icon-bell: url();
  --jp-icon-bug-dot: url();
  --jp-icon-bug: url();
  --jp-icon-build: url();
  --jp-icon-caret-down-empty-thin: url();
  --jp-icon-caret-down-empty: url();
  --jp-icon-caret-down: url();
  --jp-icon-caret-left: url();
  --jp-icon-caret-right: url();
  --jp-icon-caret-up-empty-thin: url();
  --jp-icon-caret-up: url();
  --jp-icon-case-sensitive: url();
  --jp-icon-check: url();
  --jp-icon-circle-empty: url();
  --jp-icon-circle: url();
  --jp-icon-clear: url();
  --jp-icon-close: url();
  --jp-icon-code-check: url();
  --jp-icon-code: url();
  --jp-icon-collapse-all: url();
  --jp-icon-console: url();
  --jp-icon-copy: url();
  --jp-icon-copyright: url();
  --jp-icon-cut: url();
  --jp-icon-delete: url();
  --jp-icon-download: url();
  --jp-icon-duplicate: url();
  --jp-icon-edit: url();
  --jp-icon-ellipses: url();
  --jp-icon-error: url();
  --jp-icon-expand-all: url();
  --jp-icon-extension: url();
  --jp-icon-fast-forward: url();
  --jp-icon-file-upload: url();
  --jp-icon-file: url();
  --jp-icon-filter-dot: url();
  --jp-icon-filter-list: url();
  --jp-icon-filter: url();
  --jp-icon-folder-favorite: url();
  --jp-icon-folder: url();
  --jp-icon-home: url();
  --jp-icon-html5: url();
  --jp-icon-image: url();
  --jp-icon-info: url();
  --jp-icon-inspector: url();
  --jp-icon-json: url();
  --jp-icon-julia: url();
  --jp-icon-jupyter-favicon: url();
  --jp-icon-jupyter: url();
  --jp-icon-jupyterlab-wordmark: url();
  --jp-icon-kernel: url();
  --jp-icon-keyboard: url();
  --jp-icon-launch: url();
  --jp-icon-launcher: url();
  --jp-icon-line-form: url();
  --jp-icon-link: url();
  --jp-icon-list: url();
  --jp-icon-markdown: url();
  --jp-icon-move-down: url();
  --jp-icon-move-up: url();
  --jp-icon-new-folder: url();
  --jp-icon-not-trusted: url();
  --jp-icon-notebook: url();
  --jp-icon-numbering: url();
  --jp-icon-offline-bolt: url();
  --jp-icon-palette: url();
  --jp-icon-paste: url();
  --jp-icon-pdf: url();
  --jp-icon-python: url();
  --jp-icon-r-kernel: url();
  --jp-icon-react: url();
  --jp-icon-redo: url();
  --jp-icon-refresh: url();
  --jp-icon-regex: url();
  --jp-icon-run: url();
  --jp-icon-running: url();
  --jp-icon-save: url();
  --jp-icon-search: url();
  --jp-icon-settings: url();
  --jp-icon-share: url();
  --jp-icon-spreadsheet: url();
  --jp-icon-stop: url();
  --jp-icon-tab: url();
  --jp-icon-table-rows: url();
  --jp-icon-tag: url();
  --jp-icon-terminal: url();
  --jp-icon-text-editor: url();
  --jp-icon-toc: url();
  --jp-icon-tree-view: url();
  --jp-icon-trusted: url();
  --jp-icon-undo: url();
  --jp-icon-user: url();
  --jp-icon-users: url();
  --jp-icon-vega: url();
  --jp-icon-word: url();
  --jp-icon-yaml: url();
}

/* Icon CSS class declarations */

.jp-AddAboveIcon {
  background-image: var(--jp-icon-add-above);
}

.jp-AddBelowIcon {
  background-image: var(--jp-icon-add-below);
}

.jp-AddIcon {
  background-image: var(--jp-icon-add);
}

.jp-BellIcon {
  background-image: var(--jp-icon-bell);
}

.jp-BugDotIcon {
  background-image: var(--jp-icon-bug-dot);
}

.jp-BugIcon {
  background-image: var(--jp-icon-bug);
}

.jp-BuildIcon {
  background-image: var(--jp-icon-build);
}

.jp-CaretDownEmptyIcon {
  background-image: var(--jp-icon-caret-down-empty);
}

.jp-CaretDownEmptyThinIcon {
  background-image: var(--jp-icon-caret-down-empty-thin);
}

.jp-CaretDownIcon {
  background-image: var(--jp-icon-caret-down);
}

.jp-CaretLeftIcon {
  background-image: var(--jp-icon-caret-left);
}

.jp-CaretRightIcon {
  background-image: var(--jp-icon-caret-right);
}

.jp-CaretUpEmptyThinIcon {
  background-image: var(--jp-icon-caret-up-empty-thin);
}

.jp-CaretUpIcon {
  background-image: var(--jp-icon-caret-up);
}

.jp-CaseSensitiveIcon {
  background-image: var(--jp-icon-case-sensitive);
}

.jp-CheckIcon {
  background-image: var(--jp-icon-check);
}

.jp-CircleEmptyIcon {
  background-image: var(--jp-icon-circle-empty);
}

.jp-CircleIcon {
  background-image: var(--jp-icon-circle);
}

.jp-ClearIcon {
  background-image: var(--jp-icon-clear);
}

.jp-CloseIcon {
  background-image: var(--jp-icon-close);
}

.jp-CodeCheckIcon {
  background-image: var(--jp-icon-code-check);
}

.jp-CodeIcon {
  background-image: var(--jp-icon-code);
}

.jp-CollapseAllIcon {
  background-image: var(--jp-icon-collapse-all);
}

.jp-ConsoleIcon {
  background-image: var(--jp-icon-console);
}

.jp-CopyIcon {
  background-image: var(--jp-icon-copy);
}

.jp-CopyrightIcon {
  background-image: var(--jp-icon-copyright);
}

.jp-CutIcon {
  background-image: var(--jp-icon-cut);
}

.jp-DeleteIcon {
  background-image: var(--jp-icon-delete);
}

.jp-DownloadIcon {
  background-image: var(--jp-icon-download);
}

.jp-DuplicateIcon {
  background-image: var(--jp-icon-duplicate);
}

.jp-EditIcon {
  background-image: var(--jp-icon-edit);
}

.jp-EllipsesIcon {
  background-image: var(--jp-icon-ellipses);
}

.jp-ErrorIcon {
  background-image: var(--jp-icon-error);
}

.jp-ExpandAllIcon {
  background-image: var(--jp-icon-expand-all);
}

.jp-ExtensionIcon {
  background-image: var(--jp-icon-extension);
}

.jp-FastForwardIcon {
  background-image: var(--jp-icon-fast-forward);
}

.jp-FileIcon {
  background-image: var(--jp-icon-file);
}

.jp-FileUploadIcon {
  background-image: var(--jp-icon-file-upload);
}

.jp-FilterDotIcon {
  background-image: var(--jp-icon-filter-dot);
}

.jp-FilterIcon {
  background-image: var(--jp-icon-filter);
}

.jp-FilterListIcon {
  background-image: var(--jp-icon-filter-list);
}

.jp-FolderFavoriteIcon {
  background-image: var(--jp-icon-folder-favorite);
}

.jp-FolderIcon {
  background-image: var(--jp-icon-folder);
}

.jp-HomeIcon {
  background-image: var(--jp-icon-home);
}

.jp-Html5Icon {
  background-image: var(--jp-icon-html5);
}

.jp-ImageIcon {
  background-image: var(--jp-icon-image);
}

.jp-InfoIcon {
  background-image: var(--jp-icon-info);
}

.jp-InspectorIcon {
  background-image: var(--jp-icon-inspector);
}

.jp-JsonIcon {
  background-image: var(--jp-icon-json);
}

.jp-JuliaIcon {
  background-image: var(--jp-icon-julia);
}

.jp-JupyterFaviconIcon {
  background-image: var(--jp-icon-jupyter-favicon);
}

.jp-JupyterIcon {
  background-image: var(--jp-icon-jupyter);
}

.jp-JupyterlabWordmarkIcon {
  background-image: var(--jp-icon-jupyterlab-wordmark);
}

.jp-KernelIcon {
  background-image: var(--jp-icon-kernel);
}

.jp-KeyboardIcon {
  background-image: var(--jp-icon-keyboard);
}

.jp-LaunchIcon {
  background-image: var(--jp-icon-launch);
}

.jp-LauncherIcon {
  background-image: var(--jp-icon-launcher);
}

.jp-LineFormIcon {
  background-image: var(--jp-icon-line-form);
}

.jp-LinkIcon {
  background-image: var(--jp-icon-link);
}

.jp-ListIcon {
  background-image: var(--jp-icon-list);
}

.jp-MarkdownIcon {
  background-image: var(--jp-icon-markdown);
}

.jp-MoveDownIcon {
  background-image: var(--jp-icon-move-down);
}

.jp-MoveUpIcon {
  background-image: var(--jp-icon-move-up);
}

.jp-NewFolderIcon {
  background-image: var(--jp-icon-new-folder);
}

.jp-NotTrustedIcon {
  background-image: var(--jp-icon-not-trusted);
}

.jp-NotebookIcon {
  background-image: var(--jp-icon-notebook);
}

.jp-NumberingIcon {
  background-image: var(--jp-icon-numbering);
}

.jp-OfflineBoltIcon {
  background-image: var(--jp-icon-offline-bolt);
}

.jp-PaletteIcon {
  background-image: var(--jp-icon-palette);
}

.jp-PasteIcon {
  background-image: var(--jp-icon-paste);
}

.jp-PdfIcon {
  background-image: var(--jp-icon-pdf);
}

.jp-PythonIcon {
  background-image: var(--jp-icon-python);
}

.jp-RKernelIcon {
  background-image: var(--jp-icon-r-kernel);
}

.jp-ReactIcon {
  background-image: var(--jp-icon-react);
}

.jp-RedoIcon {
  background-image: var(--jp-icon-redo);
}

.jp-RefreshIcon {
  background-image: var(--jp-icon-refresh);
}

.jp-RegexIcon {
  background-image: var(--jp-icon-regex);
}

.jp-RunIcon {
  background-image: var(--jp-icon-run);
}

.jp-RunningIcon {
  background-image: var(--jp-icon-running);
}

.jp-SaveIcon {
  background-image: var(--jp-icon-save);
}

.jp-SearchIcon {
  background-image: var(--jp-icon-search);
}

.jp-SettingsIcon {
  background-image: var(--jp-icon-settings);
}

.jp-ShareIcon {
  background-image: var(--jp-icon-share);
}

.jp-SpreadsheetIcon {
  background-image: var(--jp-icon-spreadsheet);
}

.jp-StopIcon {
  background-image: var(--jp-icon-stop);
}

.jp-TabIcon {
  background-image: var(--jp-icon-tab);
}

.jp-TableRowsIcon {
  background-image: var(--jp-icon-table-rows);
}

.jp-TagIcon {
  background-image: var(--jp-icon-tag);
}

.jp-TerminalIcon {
  background-image: var(--jp-icon-terminal);
}

.jp-TextEditorIcon {
  background-image: var(--jp-icon-text-editor);
}

.jp-TocIcon {
  background-image: var(--jp-icon-toc);
}

.jp-TreeViewIcon {
  background-image: var(--jp-icon-tree-view);
}

.jp-TrustedIcon {
  background-image: var(--jp-icon-trusted);
}

.jp-UndoIcon {
  background-image: var(--jp-icon-undo);
}

.jp-UserIcon {
  background-image: var(--jp-icon-user);
}

.jp-UsersIcon {
  background-image: var(--jp-icon-users);
}

.jp-VegaIcon {
  background-image: var(--jp-icon-vega);
}

.jp-WordIcon {
  background-image: var(--jp-icon-word);
}

.jp-YamlIcon {
  background-image: var(--jp-icon-yaml);
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/**
 * (DEPRECATED) Support for consuming icons as CSS background images
 */

.jp-Icon,
.jp-MaterialIcon {
  background-position: center;
  background-repeat: no-repeat;
  background-size: 16px;
  min-width: 16px;
  min-height: 16px;
}

.jp-Icon-cover {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

/**
 * (DEPRECATED) Support for specific CSS icon sizes
 */

.jp-Icon-16 {
  background-size: 16px;
  min-width: 16px;
  min-height: 16px;
}

.jp-Icon-18 {
  background-size: 18px;
  min-width: 18px;
  min-height: 18px;
}

.jp-Icon-20 {
  background-size: 20px;
  min-width: 20px;
  min-height: 20px;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.lm-TabBar .lm-TabBar-addButton {
  align-items: center;
  display: flex;
  padding: 4px;
  padding-bottom: 5px;
  margin-right: 1px;
  background-color: var(--jp-layout-color2);
}

.lm-TabBar .lm-TabBar-addButton:hover {
  background-color: var(--jp-layout-color1);
}

.lm-DockPanel-tabBar .lm-TabBar-tab {
  width: var(--jp-private-horizontal-tab-width);
}

.lm-DockPanel-tabBar .lm-TabBar-content {
  flex: unset;
}

.lm-DockPanel-tabBar[data-orientation='horizontal'] {
  flex: 1 1 auto;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/**
 * Support for icons as inline SVG HTMLElements
 */

/* recolor the primary elements of an icon */
.jp-icon0[fill] {
  fill: var(--jp-inverse-layout-color0);
}

.jp-icon1[fill] {
  fill: var(--jp-inverse-layout-color1);
}

.jp-icon2[fill] {
  fill: var(--jp-inverse-layout-color2);
}

.jp-icon3[fill] {
  fill: var(--jp-inverse-layout-color3);
}

.jp-icon4[fill] {
  fill: var(--jp-inverse-layout-color4);
}

.jp-icon0[stroke] {
  stroke: var(--jp-inverse-layout-color0);
}

.jp-icon1[stroke] {
  stroke: var(--jp-inverse-layout-color1);
}

.jp-icon2[stroke] {
  stroke: var(--jp-inverse-layout-color2);
}

.jp-icon3[stroke] {
  stroke: var(--jp-inverse-layout-color3);
}

.jp-icon4[stroke] {
  stroke: var(--jp-inverse-layout-color4);
}

/* recolor the accent elements of an icon */
.jp-icon-accent0[fill] {
  fill: var(--jp-layout-color0);
}

.jp-icon-accent1[fill] {
  fill: var(--jp-layout-color1);
}

.jp-icon-accent2[fill] {
  fill: var(--jp-layout-color2);
}

.jp-icon-accent3[fill] {
  fill: var(--jp-layout-color3);
}

.jp-icon-accent4[fill] {
  fill: var(--jp-layout-color4);
}

.jp-icon-accent0[stroke] {
  stroke: var(--jp-layout-color0);
}

.jp-icon-accent1[stroke] {
  stroke: var(--jp-layout-color1);
}

.jp-icon-accent2[stroke] {
  stroke: var(--jp-layout-color2);
}

.jp-icon-accent3[stroke] {
  stroke: var(--jp-layout-color3);
}

.jp-icon-accent4[stroke] {
  stroke: var(--jp-layout-color4);
}

/* set the color of an icon to transparent */
.jp-icon-none[fill] {
  fill: none;
}

.jp-icon-none[stroke] {
  stroke: none;
}

/* brand icon colors. Same for light and dark */
.jp-icon-brand0[fill] {
  fill: var(--jp-brand-color0);
}

.jp-icon-brand1[fill] {
  fill: var(--jp-brand-color1);
}

.jp-icon-brand2[fill] {
  fill: var(--jp-brand-color2);
}

.jp-icon-brand3[fill] {
  fill: var(--jp-brand-color3);
}

.jp-icon-brand4[fill] {
  fill: var(--jp-brand-color4);
}

.jp-icon-brand0[stroke] {
  stroke: var(--jp-brand-color0);
}

.jp-icon-brand1[stroke] {
  stroke: var(--jp-brand-color1);
}

.jp-icon-brand2[stroke] {
  stroke: var(--jp-brand-color2);
}

.jp-icon-brand3[stroke] {
  stroke: var(--jp-brand-color3);
}

.jp-icon-brand4[stroke] {
  stroke: var(--jp-brand-color4);
}

/* warn icon colors. Same for light and dark */
.jp-icon-warn0[fill] {
  fill: var(--jp-warn-color0);
}

.jp-icon-warn1[fill] {
  fill: var(--jp-warn-color1);
}

.jp-icon-warn2[fill] {
  fill: var(--jp-warn-color2);
}

.jp-icon-warn3[fill] {
  fill: var(--jp-warn-color3);
}

.jp-icon-warn0[stroke] {
  stroke: var(--jp-warn-color0);
}

.jp-icon-warn1[stroke] {
  stroke: var(--jp-warn-color1);
}

.jp-icon-warn2[stroke] {
  stroke: var(--jp-warn-color2);
}

.jp-icon-warn3[stroke] {
  stroke: var(--jp-warn-color3);
}

/* icon colors that contrast well with each other and most backgrounds */
.jp-icon-contrast0[fill] {
  fill: var(--jp-icon-contrast-color0);
}

.jp-icon-contrast1[fill] {
  fill: var(--jp-icon-contrast-color1);
}

.jp-icon-contrast2[fill] {
  fill: var(--jp-icon-contrast-color2);
}

.jp-icon-contrast3[fill] {
  fill: var(--jp-icon-contrast-color3);
}

.jp-icon-contrast0[stroke] {
  stroke: var(--jp-icon-contrast-color0);
}

.jp-icon-contrast1[stroke] {
  stroke: var(--jp-icon-contrast-color1);
}

.jp-icon-contrast2[stroke] {
  stroke: var(--jp-icon-contrast-color2);
}

.jp-icon-contrast3[stroke] {
  stroke: var(--jp-icon-contrast-color3);
}

.jp-icon-dot[fill] {
  fill: var(--jp-warn-color0);
}

.jp-jupyter-icon-color[fill] {
  fill: var(--jp-jupyter-icon-color, var(--jp-warn-color0));
}

.jp-notebook-icon-color[fill] {
  fill: var(--jp-notebook-icon-color, var(--jp-warn-color0));
}

.jp-json-icon-color[fill] {
  fill: var(--jp-json-icon-color, var(--jp-warn-color1));
}

.jp-console-icon-color[fill] {
  fill: var(--jp-console-icon-color, white);
}

.jp-console-icon-background-color[fill] {
  fill: var(--jp-console-icon-background-color, var(--jp-brand-color1));
}

.jp-terminal-icon-color[fill] {
  fill: var(--jp-terminal-icon-color, var(--jp-layout-color2));
}

.jp-terminal-icon-background-color[fill] {
  fill: var(
    --jp-terminal-icon-background-color,
    var(--jp-inverse-layout-color2)
  );
}

.jp-text-editor-icon-color[fill] {
  fill: var(--jp-text-editor-icon-color, var(--jp-inverse-layout-color3));
}

.jp-inspector-icon-color[fill] {
  fill: var(--jp-inspector-icon-color, var(--jp-inverse-layout-color3));
}

/* CSS for icons in selected filebrowser listing items */
.jp-DirListing-item.jp-mod-selected .jp-icon-selectable[fill] {
  fill: #fff;
}

.jp-DirListing-item.jp-mod-selected .jp-icon-selectable-inverse[fill] {
  fill: var(--jp-brand-color1);
}

/* stylelint-disable selector-max-class, selector-max-compound-selectors */

/**
* TODO: come up with non css-hack solution for showing the busy icon on top
*  of the close icon
* CSS for complex behavior of close icon of tabs in the main area tabbar
*/
.lm-DockPanel-tabBar
  .lm-TabBar-tab.lm-mod-closable.jp-mod-dirty
  > .lm-TabBar-tabCloseIcon
  > :not(:hover)
  > .jp-icon3[fill] {
  fill: none;
}

.lm-DockPanel-tabBar
  .lm-TabBar-tab.lm-mod-closable.jp-mod-dirty
  > .lm-TabBar-tabCloseIcon
  > :not(:hover)
  > .jp-icon-busy[fill] {
  fill: var(--jp-inverse-layout-color3);
}

/* stylelint-enable selector-max-class, selector-max-compound-selectors */

/* CSS for icons in status bar */
#jp-main-statusbar .jp-mod-selected .jp-icon-selectable[fill] {
  fill: #fff;
}

#jp-main-statusbar .jp-mod-selected .jp-icon-selectable-inverse[fill] {
  fill: var(--jp-brand-color1);
}

/* special handling for splash icon CSS. While the theme CSS reloads during
   splash, the splash icon can loose theming. To prevent that, we set a
   default for its color variable */
:root {
  --jp-warn-color0: var(--md-orange-700);
}

/* not sure what to do with this one, used in filebrowser listing */
.jp-DragIcon {
  margin-right: 4px;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/**
 * Support for alt colors for icons as inline SVG HTMLElements
 */

/* alt recolor the primary elements of an icon */
.jp-icon-alt .jp-icon0[fill] {
  fill: var(--jp-layout-color0);
}

.jp-icon-alt .jp-icon1[fill] {
  fill: var(--jp-layout-color1);
}

.jp-icon-alt .jp-icon2[fill] {
  fill: var(--jp-layout-color2);
}

.jp-icon-alt .jp-icon3[fill] {
  fill: var(--jp-layout-color3);
}

.jp-icon-alt .jp-icon4[fill] {
  fill: var(--jp-layout-color4);
}

.jp-icon-alt .jp-icon0[stroke] {
  stroke: var(--jp-layout-color0);
}

.jp-icon-alt .jp-icon1[stroke] {
  stroke: var(--jp-layout-color1);
}

.jp-icon-alt .jp-icon2[stroke] {
  stroke: var(--jp-layout-color2);
}

.jp-icon-alt .jp-icon3[stroke] {
  stroke: var(--jp-layout-color3);
}

.jp-icon-alt .jp-icon4[stroke] {
  stroke: var(--jp-layout-color4);
}

/* alt recolor the accent elements of an icon */
.jp-icon-alt .jp-icon-accent0[fill] {
  fill: var(--jp-inverse-layout-color0);
}

.jp-icon-alt .jp-icon-accent1[fill] {
  fill: var(--jp-inverse-layout-color1);
}

.jp-icon-alt .jp-icon-accent2[fill] {
  fill: var(--jp-inverse-layout-color2);
}

.jp-icon-alt .jp-icon-accent3[fill] {
  fill: var(--jp-inverse-layout-color3);
}

.jp-icon-alt .jp-icon-accent4[fill] {
  fill: var(--jp-inverse-layout-color4);
}

.jp-icon-alt .jp-icon-accent0[stroke] {
  stroke: var(--jp-inverse-layout-color0);
}

.jp-icon-alt .jp-icon-accent1[stroke] {
  stroke: var(--jp-inverse-layout-color1);
}

.jp-icon-alt .jp-icon-accent2[stroke] {
  stroke: var(--jp-inverse-layout-color2);
}

.jp-icon-alt .jp-icon-accent3[stroke] {
  stroke: var(--jp-inverse-layout-color3);
}

.jp-icon-alt .jp-icon-accent4[stroke] {
  stroke: var(--jp-inverse-layout-color4);
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-icon-hoverShow:not(:hover) .jp-icon-hoverShow-content {
  display: none !important;
}

/**
 * Support for hover colors for icons as inline SVG HTMLElements
 */

/**
 * regular colors
 */

/* recolor the primary elements of an icon */
.jp-icon-hover :hover .jp-icon0-hover[fill] {
  fill: var(--jp-inverse-layout-color0);
}

.jp-icon-hover :hover .jp-icon1-hover[fill] {
  fill: var(--jp-inverse-layout-color1);
}

.jp-icon-hover :hover .jp-icon2-hover[fill] {
  fill: var(--jp-inverse-layout-color2);
}

.jp-icon-hover :hover .jp-icon3-hover[fill] {
  fill: var(--jp-inverse-layout-color3);
}

.jp-icon-hover :hover .jp-icon4-hover[fill] {
  fill: var(--jp-inverse-layout-color4);
}

.jp-icon-hover :hover .jp-icon0-hover[stroke] {
  stroke: var(--jp-inverse-layout-color0);
}

.jp-icon-hover :hover .jp-icon1-hover[stroke] {
  stroke: var(--jp-inverse-layout-color1);
}

.jp-icon-hover :hover .jp-icon2-hover[stroke] {
  stroke: var(--jp-inverse-layout-color2);
}

.jp-icon-hover :hover .jp-icon3-hover[stroke] {
  stroke: var(--jp-inverse-layout-color3);
}

.jp-icon-hover :hover .jp-icon4-hover[stroke] {
  stroke: var(--jp-inverse-layout-color4);
}

/* recolor the accent elements of an icon */
.jp-icon-hover :hover .jp-icon-accent0-hover[fill] {
  fill: var(--jp-layout-color0);
}

.jp-icon-hover :hover .jp-icon-accent1-hover[fill] {
  fill: var(--jp-layout-color1);
}

.jp-icon-hover :hover .jp-icon-accent2-hover[fill] {
  fill: var(--jp-layout-color2);
}

.jp-icon-hover :hover .jp-icon-accent3-hover[fill] {
  fill: var(--jp-layout-color3);
}

.jp-icon-hover :hover .jp-icon-accent4-hover[fill] {
  fill: var(--jp-layout-color4);
}

.jp-icon-hover :hover .jp-icon-accent0-hover[stroke] {
  stroke: var(--jp-layout-color0);
}

.jp-icon-hover :hover .jp-icon-accent1-hover[stroke] {
  stroke: var(--jp-layout-color1);
}

.jp-icon-hover :hover .jp-icon-accent2-hover[stroke] {
  stroke: var(--jp-layout-color2);
}

.jp-icon-hover :hover .jp-icon-accent3-hover[stroke] {
  stroke: var(--jp-layout-color3);
}

.jp-icon-hover :hover .jp-icon-accent4-hover[stroke] {
  stroke: var(--jp-layout-color4);
}

/* set the color of an icon to transparent */
.jp-icon-hover :hover .jp-icon-none-hover[fill] {
  fill: none;
}

.jp-icon-hover :hover .jp-icon-none-hover[stroke] {
  stroke: none;
}

/**
 * inverse colors
 */

/* inverse recolor the primary elements of an icon */
.jp-icon-hover.jp-icon-alt :hover .jp-icon0-hover[fill] {
  fill: var(--jp-layout-color0);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon1-hover[fill] {
  fill: var(--jp-layout-color1);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon2-hover[fill] {
  fill: var(--jp-layout-color2);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon3-hover[fill] {
  fill: var(--jp-layout-color3);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon4-hover[fill] {
  fill: var(--jp-layout-color4);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon0-hover[stroke] {
  stroke: var(--jp-layout-color0);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon1-hover[stroke] {
  stroke: var(--jp-layout-color1);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon2-hover[stroke] {
  stroke: var(--jp-layout-color2);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon3-hover[stroke] {
  stroke: var(--jp-layout-color3);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon4-hover[stroke] {
  stroke: var(--jp-layout-color4);
}

/* inverse recolor the accent elements of an icon */
.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent0-hover[fill] {
  fill: var(--jp-inverse-layout-color0);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent1-hover[fill] {
  fill: var(--jp-inverse-layout-color1);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent2-hover[fill] {
  fill: var(--jp-inverse-layout-color2);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent3-hover[fill] {
  fill: var(--jp-inverse-layout-color3);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent4-hover[fill] {
  fill: var(--jp-inverse-layout-color4);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent0-hover[stroke] {
  stroke: var(--jp-inverse-layout-color0);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent1-hover[stroke] {
  stroke: var(--jp-inverse-layout-color1);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent2-hover[stroke] {
  stroke: var(--jp-inverse-layout-color2);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent3-hover[stroke] {
  stroke: var(--jp-inverse-layout-color3);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent4-hover[stroke] {
  stroke: var(--jp-inverse-layout-color4);
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-IFrame {
  width: 100%;
  height: 100%;
}

.jp-IFrame > iframe {
  border: none;
}

/*
When drag events occur, `lm-mod-override-cursor` is added to the body.
Because iframes steal all cursor events, the following two rules are necessary
to suppress pointer events while resize drags are occurring. There may be a
better solution to this problem.
*/
body.lm-mod-override-cursor .jp-IFrame {
  position: relative;
}

body.lm-mod-override-cursor .jp-IFrame::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: transparent;
}

/*-----------------------------------------------------------------------------
| Copyright (c) 2014-2016, Jupyter Development Team.
|
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-HoverBox {
  position: fixed;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-FormGroup-content fieldset {
  border: none;
  padding: 0;
  min-width: 0;
  width: 100%;
}

/* stylelint-disable selector-max-type */

.jp-FormGroup-content fieldset .jp-inputFieldWrapper input,
.jp-FormGroup-content fieldset .jp-inputFieldWrapper select,
.jp-FormGroup-content fieldset .jp-inputFieldWrapper textarea {
  font-size: var(--jp-content-font-size2);
  border-color: var(--jp-input-border-color);
  border-style: solid;
  border-radius: var(--jp-border-radius);
  border-width: 1px;
  padding: 6px 8px;
  background: none;
  color: var(--jp-ui-font-color0);
  height: inherit;
}

.jp-FormGroup-content fieldset input[type='checkbox'] {
  position: relative;
  top: 2px;
  margin-left: 0;
}

.jp-FormGroup-content button.jp-mod-styled {
  cursor: pointer;
}

.jp-FormGroup-content .checkbox label {
  cursor: pointer;
  font-size: var(--jp-content-font-size1);
}

.jp-FormGroup-content .jp-root > fieldset > legend {
  display: none;
}

.jp-FormGroup-content .jp-root > fieldset > p {
  display: none;
}

/** copy of `input.jp-mod-styled:focus` style */
.jp-FormGroup-content fieldset input:focus,
.jp-FormGroup-content fieldset select:focus {
  -moz-outline-radius: unset;
  outline: var(--jp-border-width) solid var(--md-blue-500);
  outline-offset: -1px;
  box-shadow: inset 0 0 4px var(--md-blue-300);
}

.jp-FormGroup-content fieldset input:hover:not(:focus),
.jp-FormGroup-content fieldset select:hover:not(:focus) {
  background-color: var(--jp-border-color2);
}

/* stylelint-enable selector-max-type */

.jp-FormGroup-content .checkbox .field-description {
  /* Disable default description field for checkbox:
   because other widgets do not have description fields,
   we add descriptions to each widget on the field level.
  */
  display: none;
}

.jp-FormGroup-content #root__description {
  display: none;
}

.jp-FormGroup-content .jp-modifiedIndicator {
  width: 5px;
  background-color: var(--jp-brand-color2);
  margin-top: 0;
  margin-left: calc(var(--jp-private-settingeditor-modifier-indent) * -1);
  flex-shrink: 0;
}

.jp-FormGroup-content .jp-modifiedIndicator.jp-errorIndicator {
  background-color: var(--jp-error-color0);
  margin-right: 0.5em;
}

/* RJSF ARRAY style */

.jp-arrayFieldWrapper legend {
  font-size: var(--jp-content-font-size2);
  color: var(--jp-ui-font-color0);
  flex-basis: 100%;
  padding: 4px 0;
  font-weight: var(--jp-content-heading-font-weight);
  border-bottom: 1px solid var(--jp-border-color2);
}

.jp-arrayFieldWrapper .field-description {
  padding: 4px 0;
  white-space: pre-wrap;
}

.jp-arrayFieldWrapper .array-item {
  width: 100%;
  border: 1px solid var(--jp-border-color2);
  border-radius: 4px;
  margin: 4px;
}

.jp-ArrayOperations {
  display: flex;
  margin-left: 8px;
}

.jp-ArrayOperationsButton {
  margin: 2px;
}

.jp-ArrayOperationsButton .jp-icon3[fill] {
  fill: var(--jp-ui-font-color0);
}

button.jp-ArrayOperationsButton.jp-mod-styled:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

/* RJSF form validation error */

.jp-FormGroup-content .validationErrors {
  color: var(--jp-error-color0);
}

/* Hide panel level error as duplicated the field level error */
.jp-FormGroup-content .panel.errors {
  display: none;
}

/* RJSF normal content (settings-editor) */

.jp-FormGroup-contentNormal {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

.jp-FormGroup-contentNormal .jp-FormGroup-contentItem {
  margin-left: 7px;
  color: var(--jp-ui-font-color0);
}

.jp-FormGroup-contentNormal .jp-FormGroup-description {
  flex-basis: 100%;
  padding: 4px 7px;
}

.jp-FormGroup-contentNormal .jp-FormGroup-default {
  flex-basis: 100%;
  padding: 4px 7px;
}

.jp-FormGroup-contentNormal .jp-FormGroup-fieldLabel {
  font-size: var(--jp-content-font-size1);
  font-weight: normal;
  min-width: 120px;
}

.jp-FormGroup-contentNormal fieldset:not(:first-child) {
  margin-left: 7px;
}

.jp-FormGroup-contentNormal .field-array-of-string .array-item {
  /* Display `jp-ArrayOperations` buttons side-by-side with content except
    for small screens where flex-wrap will place them one below the other.
  */
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

.jp-FormGroup-contentNormal .jp-objectFieldWrapper .form-group {
  padding: 2px 8px 2px var(--jp-private-settingeditor-modifier-indent);
  margin-top: 2px;
}

/* RJSF compact content (metadata-form) */

.jp-FormGroup-content.jp-FormGroup-contentCompact {
  width: 100%;
}

.jp-FormGroup-contentCompact .form-group {
  display: flex;
  padding: 0.5em 0.2em 0.5em 0;
}

.jp-FormGroup-contentCompact
  .jp-FormGroup-compactTitle
  .jp-FormGroup-description {
  font-size: var(--jp-ui-font-size1);
  color: var(--jp-ui-font-color2);
}

.jp-FormGroup-contentCompact .jp-FormGroup-fieldLabel {
  padding-bottom: 0.3em;
}

.jp-FormGroup-contentCompact .jp-inputFieldWrapper .form-control {
  width: 100%;
  box-sizing: border-box;
}

.jp-FormGroup-contentCompact .jp-arrayFieldWrapper .jp-FormGroup-compactTitle {
  padding-bottom: 7px;
}

.jp-FormGroup-contentCompact
  .jp-objectFieldWrapper
  .jp-objectFieldWrapper
  .form-group {
  padding: 2px 8px 2px var(--jp-private-settingeditor-modifier-indent);
  margin-top: 2px;
}

.jp-FormGroup-contentCompact ul.error-detail {
  margin-block-start: 0.5em;
  margin-block-end: 0.5em;
  padding-inline-start: 1em;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

.jp-SidePanel {
  display: flex;
  flex-direction: column;
  min-width: var(--jp-sidebar-min-width);
  overflow-y: auto;
  color: var(--jp-ui-font-color1);
  background: var(--jp-layout-color1);
  font-size: var(--jp-ui-font-size1);
}

.jp-SidePanel-header {
  flex: 0 0 auto;
  display: flex;
  border-bottom: var(--jp-border-width) solid var(--jp-border-color2);
  font-size: var(--jp-ui-font-size0);
  font-weight: 600;
  letter-spacing: 1px;
  margin: 0;
  padding: 2px;
  text-transform: uppercase;
}

.jp-SidePanel-toolbar {
  flex: 0 0 auto;
}

.jp-SidePanel-content {
  flex: 1 1 auto;
}

.jp-SidePanel-toolbar,
.jp-AccordionPanel-toolbar {
  height: var(--jp-private-toolbar-height);
}

.jp-SidePanel-toolbar.jp-Toolbar-micro {
  display: none;
}

.lm-AccordionPanel .jp-AccordionPanel-title {
  box-sizing: border-box;
  line-height: 25px;
  margin: 0;
  display: flex;
  align-items: center;
  background: var(--jp-layout-color1);
  color: var(--jp-ui-font-color1);
  border-bottom: var(--jp-border-width) solid var(--jp-toolbar-border-color);
  box-shadow: var(--jp-toolbar-box-shadow);
  font-size: var(--jp-ui-font-size0);
}

.jp-AccordionPanel-title {
  cursor: pointer;
  user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none;
  text-transform: uppercase;
}

.lm-AccordionPanel[data-orientation='horizontal'] > .jp-AccordionPanel-title {
  /* Title is rotated for horizontal accordion panel using CSS */
  display: block;
  transform-origin: top left;
  transform: rotate(-90deg) translate(-100%);
}

.jp-AccordionPanel-title .lm-AccordionPanel-titleLabel {
  user-select: none;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.jp-AccordionPanel-title .lm-AccordionPanel-titleCollapser {
  transform: rotate(-90deg);
  margin: auto 0;
  height: 16px;
}

.jp-AccordionPanel-title.lm-mod-expanded .lm-AccordionPanel-titleCollapser {
  transform: rotate(0deg);
}

.lm-AccordionPanel .jp-AccordionPanel-toolbar {
  background: none;
  box-shadow: none;
  border: none;
  margin-left: auto;
}

.lm-AccordionPanel .lm-SplitPanel-handle:hover {
  background: var(--jp-layout-color3);
}

.jp-text-truncated {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/*-----------------------------------------------------------------------------
| Copyright (c) 2017, Jupyter Development Team.
|
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-Spinner {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 10;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: var(--jp-layout-color0);
  outline: none;
}

.jp-SpinnerContent {
  font-size: 10px;
  margin: 50px auto;
  text-indent: -9999em;
  width: 3em;
  height: 3em;
  border-radius: 50%;
  background: var(--jp-brand-color3);
  background: linear-gradient(
    to right,
    #f37626 10%,
    rgba(255, 255, 255, 0) 42%
  );
  position: relative;
  animation: load3 1s infinite linear, fadeIn 1s;
}

.jp-SpinnerContent::before {
  width: 50%;
  height: 50%;
  background: #f37626;
  border-radius: 100% 0 0;
  position: absolute;
  top: 0;
  left: 0;
  content: '';
}

.jp-SpinnerContent::after {
  background: var(--jp-layout-color0);
  width: 75%;
  height: 75%;
  border-radius: 50%;
  content: '';
  margin: auto;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes load3 {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/*-----------------------------------------------------------------------------
| Copyright (c) 2014-2017, Jupyter Development Team.
|
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

button.jp-mod-styled {
  font-size: var(--jp-ui-font-size1);
  color: var(--jp-ui-font-color0);
  border: none;
  box-sizing: border-box;
  text-align: center;
  line-height: 32px;
  height: 32px;
  padding: 0 12px;
  letter-spacing: 0.8px;
  outline: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

input.jp-mod-styled {
  background: var(--jp-input-background);
  height: 28px;
  box-sizing: border-box;
  border: var(--jp-border-width) solid var(--jp-border-color1);
  padding-left: 7px;
  padding-right: 7px;
  font-size: var(--jp-ui-font-size2);
  color: var(--jp-ui-font-color0);
  outline: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

input[type='checkbox'].jp-mod-styled {
  appearance: checkbox;
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
  height: auto;
}

input.jp-mod-styled:focus {
  border: var(--jp-border-width) solid var(--md-blue-500);
  box-shadow: inset 0 0 4px var(--md-blue-300);
}

.jp-select-wrapper {
  display: flex;
  position: relative;
  flex-direction: column;
  padding: 1px;
  background-color: var(--jp-layout-color1);
  box-sizing: border-box;
  margin-bottom: 12px;
}

.jp-select-wrapper:not(.multiple) {
  height: 28px;
}

.jp-select-wrapper.jp-mod-focused select.jp-mod-styled {
  border: var(--jp-border-width) solid var(--jp-input-active-border-color);
  box-shadow: var(--jp-input-box-shadow);
  background-color: var(--jp-input-active-background);
}

select.jp-mod-styled:hover {
  cursor: pointer;
  color: var(--jp-ui-font-color0);
  background-color: var(--jp-input-hover-background);
  box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.5);
}

select.jp-mod-styled {
  flex: 1 1 auto;
  width: 100%;
  font-size: var(--jp-ui-font-size2);
  background: var(--jp-input-background);
  color: var(--jp-ui-font-color0);
  padding: 0 25px 0 8px;
  border: var(--jp-border-width) solid var(--jp-input-border-color);
  border-radius: 0;
  outline: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

select.jp-mod-styled:not([multiple]) {
  height: 32px;
}

select.jp-mod-styled[multiple] {
  max-height: 200px;
  overflow-y: auto;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-switch {
  display: flex;
  align-items: center;
  padding-left: 4px;
  padding-right: 4px;
  font-size: var(--jp-ui-font-size1);
  background-color: transparent;
  color: var(--jp-ui-font-color1);
  border: none;
  height: 20px;
}

.jp-switch:hover {
  background-color: var(--jp-layout-color2);
}

.jp-switch-label {
  margin-right: 5px;
  font-family: var(--jp-ui-font-family);
}

.jp-switch-track {
  cursor: pointer;
  background-color: var(--jp-switch-color, var(--jp-border-color1));
  -webkit-transition: 0.4s;
  transition: 0.4s;
  border-radius: 34px;
  height: 16px;
  width: 35px;
  position: relative;
}

.jp-switch-track::before {
  content: '';
  position: absolute;
  height: 10px;
  width: 10px;
  margin: 3px;
  left: 0;
  background-color: var(--jp-ui-inverse-font-color1);
  -webkit-transition: 0.4s;
  transition: 0.4s;
  border-radius: 50%;
}

.jp-switch[aria-checked='true'] .jp-switch-track {
  background-color: var(--jp-switch-true-position-color, var(--jp-warn-color0));
}

.jp-switch[aria-checked='true'] .jp-switch-track::before {
  /* track width (35) - margins (3 + 3) - thumb width (10) */
  left: 19px;
}

/*-----------------------------------------------------------------------------
| Copyright (c) 2014-2016, Jupyter Development Team.
|
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

:root {
  --jp-private-toolbar-height: calc(
    28px + var(--jp-border-width)
  ); /* leave 28px for content */
}

.jp-Toolbar {
  color: var(--jp-ui-font-color1);
  flex: 0 0 auto;
  display: flex;
  flex-direction: row;
  border-bottom: var(--jp-border-width) solid var(--jp-toolbar-border-color);
  box-shadow: var(--jp-toolbar-box-shadow);
  background: var(--jp-toolbar-background);
  min-height: var(--jp-toolbar-micro-height);
  padding: 2px;
  z-index: 8;
  overflow-x: hidden;
}

/* Toolbar items */

.jp-Toolbar > .jp-Toolbar-item.jp-Toolbar-spacer {
  flex-grow: 1;
  flex-shrink: 1;
}

.jp-Toolbar-item.jp-Toolbar-kernelStatus {
  display: inline-block;
  width: 32px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 16px;
}

.jp-Toolbar > .jp-Toolbar-item {
  flex: 0 0 auto;
  display: flex;
  padding-left: 1px;
  padding-right: 1px;
  font-size: var(--jp-ui-font-size1);
  line-height: var(--jp-private-toolbar-height);
  height: 100%;
}

/* Toolbar buttons */

/* This is the div we use to wrap the react component into a Widget */
div.jp-ToolbarButton {
  color: transparent;
  border: none;
  box-sizing: border-box;
  outline: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding: 0;
  margin: 0;
}

button.jp-ToolbarButtonComponent {
  background: var(--jp-layout-color1);
  border: none;
  box-sizing: border-box;
  outline: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding: 0 6px;
  margin: 0;
  height: 24px;
  border-radius: var(--jp-border-radius);
  display: flex;
  align-items: center;
  text-align: center;
  font-size: 14px;
  min-width: unset;
  min-height: unset;
}

button.jp-ToolbarButtonComponent:disabled {
  opacity: 0.4;
}

button.jp-ToolbarButtonComponent > span {
  padding: 0;
  flex: 0 0 auto;
}

button.jp-ToolbarButtonComponent .jp-ToolbarButtonComponent-label {
  font-size: var(--jp-ui-font-size1);
  line-height: 100%;
  padding-left: 2px;
  color: var(--jp-ui-font-color1);
  font-family: var(--jp-ui-font-family);
}

#jp-main-dock-panel[data-mode='single-document']
  .jp-MainAreaWidget
  > .jp-Toolbar.jp-Toolbar-micro {
  padding: 0;
  min-height: 0;
}

#jp-main-dock-panel[data-mode='single-document']
  .jp-MainAreaWidget
  > .jp-Toolbar {
  border: none;
  box-shadow: none;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

.jp-WindowedPanel-outer {
  position: relative;
  overflow-y: auto;
}

.jp-WindowedPanel-inner {
  position: relative;
}

.jp-WindowedPanel-window {
  position: absolute;
  left: 0;
  right: 0;
  overflow: visible;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/* Sibling imports */

body {
  color: var(--jp-ui-font-color1);
  font-size: var(--jp-ui-font-size1);
}

/* Disable native link decoration styles everywhere outside of dialog boxes */
a {
  text-decoration: unset;
  color: unset;
}

a:hover {
  text-decoration: unset;
  color: unset;
}

/* Accessibility for links inside dialog box text */
.jp-Dialog-content a {
  text-decoration: revert;
  color: var(--jp-content-link-color);
}

.jp-Dialog-content a:hover {
  text-decoration: revert;
}

/* Styles for ui-components */
.jp-Button {
  color: var(--jp-ui-font-color2);
  border-radius: var(--jp-border-radius);
  padding: 0 12px;
  font-size: var(--jp-ui-font-size1);

  /* Copy from blueprint 3 */
  display: inline-flex;
  flex-direction: row;
  border: none;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  text-align: left;
  vertical-align: middle;
  min-height: 30px;
  min-width: 30px;
}

.jp-Button:disabled {
  cursor: not-allowed;
}

.jp-Button:empty {
  padding: 0 !important;
}

.jp-Button.jp-mod-small {
  min-height: 24px;
  min-width: 24px;
  font-size: 12px;
  padding: 0 7px;
}

/* Use our own theme for hover styles */
.jp-Button.jp-mod-minimal:hover {
  background-color: var(--jp-layout-color2);
}

.jp-Button.jp-mod-minimal {
  background: none;
}

.jp-InputGroup {
  display: block;
  position: relative;
}

.jp-InputGroup input {
  box-sizing: border-box;
  border: none;
  border-radius: 0;
  background-color: transparent;
  color: var(--jp-ui-font-color0);
  box-shadow: inset 0 0 0 var(--jp-border-width) var(--jp-input-border-color);
  padding-bottom: 0;
  padding-top: 0;
  padding-left: 10px;
  padding-right: 28px;
  position: relative;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-size: 14px;
  font-weight: 400;
  height: 30px;
  line-height: 30px;
  outline: none;
  vertical-align: middle;
}

.jp-InputGroup input:focus {
  box-shadow: inset 0 0 0 var(--jp-border-width)
      var(--jp-input-active-box-shadow-color),
    inset 0 0 0 3px var(--jp-input-active-box-shadow-color);
}

.jp-InputGroup input:disabled {
  cursor: not-allowed;
  resize: block;
  background-color: var(--jp-layout-color2);
  color: var(--jp-ui-font-color2);
}

.jp-InputGroup input:disabled ~ span {
  cursor: not-allowed;
  color: var(--jp-ui-font-color2);
}

.jp-InputGroup input::placeholder,
input::placeholder {
  color: var(--jp-ui-font-color2);
}

.jp-InputGroupAction {
  position: absolute;
  bottom: 1px;
  right: 0;
  padding: 6px;
}

.jp-HTMLSelect.jp-DefaultStyle select {
  background-color: initial;
  border: none;
  border-radius: 0;
  box-shadow: none;
  color: var(--jp-ui-font-color0);
  display: block;
  font-size: var(--jp-ui-font-size1);
  font-family: var(--jp-ui-font-family);
  height: 24px;
  line-height: 14px;
  padding: 0 25px 0 10px;
  text-align: left;
  -moz-appearance: none;
  -webkit-appearance: none;
}

.jp-HTMLSelect.jp-DefaultStyle select:disabled {
  background-color: var(--jp-layout-color2);
  color: var(--jp-ui-font-color2);
  cursor: not-allowed;
  resize: block;
}

.jp-HTMLSelect.jp-DefaultStyle select:disabled ~ span {
  cursor: not-allowed;
}

/* Use our own theme for hover and option styles */
/* stylelint-disable-next-line selector-max-type */
.jp-HTMLSelect.jp-DefaultStyle select:hover,
.jp-HTMLSelect.jp-DefaultStyle select > option {
  background-color: var(--jp-layout-color2);
  color: var(--jp-ui-font-color0);
}

select {
  box-sizing: border-box;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Styles
|----------------------------------------------------------------------------*/

.jp-StatusBar-Widget {
  display: flex;
  align-items: center;
  background: var(--jp-layout-color2);
  min-height: var(--jp-statusbar-height);
  justify-content: space-between;
  padding: 0 10px;
}

.jp-StatusBar-Left {
  display: flex;
  align-items: center;
  flex-direction: row;
}

.jp-StatusBar-Middle {
  display: flex;
  align-items: center;
}

.jp-StatusBar-Right {
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
}

.jp-StatusBar-Item {
  max-height: var(--jp-statusbar-height);
  margin: 0 2px;
  height: var(--jp-statusbar-height);
  white-space: nowrap;
  text-overflow: ellipsis;
  color: var(--jp-ui-font-color1);
  padding: 0 6px;
}

.jp-mod-highlighted:hover {
  background-color: var(--jp-layout-color3);
}

.jp-mod-clicked {
  background-color: var(--jp-brand-color1);
}

.jp-mod-clicked:hover {
  background-color: var(--jp-brand-color0);
}

.jp-mod-clicked .jp-StatusBar-TextItem {
  color: var(--jp-ui-inverse-font-color1);
}

.jp-StatusBar-HoverItem {
  box-shadow: '0px 4px 4px rgba(0, 0, 0, 0.25)';
}

.jp-StatusBar-TextItem {
  font-size: var(--jp-ui-font-size1);
  font-family: var(--jp-ui-font-family);
  line-height: 24px;
  color: var(--jp-ui-font-color1);
}

.jp-StatusBar-GroupItem {
  display: flex;
  align-items: center;
  flex-direction: row;
}

.jp-Statusbar-ProgressCircle svg {
  display: block;
  margin: 0 auto;
  width: 16px;
  height: 24px;
  align-self: normal;
}

.jp-Statusbar-ProgressCircle path {
  fill: var(--jp-inverse-layout-color3);
}

.jp-Statusbar-ProgressBar-progress-bar {
  height: 10px;
  width: 100px;
  border: solid 0.25px var(--jp-brand-color2);
  border-radius: 3px;
  overflow: hidden;
  align-self: center;
}

.jp-Statusbar-ProgressBar-progress-bar > div {
  background-color: var(--jp-brand-color2);
  background-image: linear-gradient(
    -45deg,
    rgba(255, 255, 255, 0.2) 25%,
    transparent 25%,
    transparent 50%,
    rgba(255, 255, 255, 0.2) 50%,
    rgba(255, 255, 255, 0.2) 75%,
    transparent 75%,
    transparent
  );
  background-size: 40px 40px;
  float: left;
  width: 0%;
  height: 100%;
  font-size: 12px;
  line-height: 14px;
  color: #fff;
  text-align: center;
  animation: jp-Statusbar-ExecutionTime-progress-bar 2s linear infinite;
}

.jp-Statusbar-ProgressBar-progress-bar p {
  color: var(--jp-ui-font-color1);
  font-family: var(--jp-ui-font-family);
  font-size: var(--jp-ui-font-size1);
  line-height: 10px;
  width: 100px;
}

@keyframes jp-Statusbar-ExecutionTime-progress-bar {
  0% {
    background-position: 0 0;
  }

  100% {
    background-position: 40px 40px;
  }
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Variables
|----------------------------------------------------------------------------*/

:root {
  --jp-private-commandpalette-search-height: 28px;
}

/*-----------------------------------------------------------------------------
| Overall styles
|----------------------------------------------------------------------------*/

.lm-CommandPalette {
  padding-bottom: 0;
  color: var(--jp-ui-font-color1);
  background: var(--jp-layout-color1);

  /* This is needed so that all font sizing of children done in ems is
   * relative to this base size */
  font-size: var(--jp-ui-font-size1);
}

/*-----------------------------------------------------------------------------
| Modal variant
|----------------------------------------------------------------------------*/

.jp-ModalCommandPalette {
  position: absolute;
  z-index: 10000;
  top: 38px;
  left: 30%;
  margin: 0;
  padding: 4px;
  width: 40%;
  box-shadow: var(--jp-elevation-z4);
  border-radius: 4px;
  background: var(--jp-layout-color0);
}

.jp-ModalCommandPalette .lm-CommandPalette {
  max-height: 40vh;
}

.jp-ModalCommandPalette .lm-CommandPalette .lm-close-icon::after {
  display: none;
}

.jp-ModalCommandPalette .lm-CommandPalette .lm-CommandPalette-header {
  display: none;
}

.jp-ModalCommandPalette .lm-CommandPalette .lm-CommandPalette-item {
  margin-left: 4px;
  margin-right: 4px;
}

.jp-ModalCommandPalette
  .lm-CommandPalette
  .lm-CommandPalette-item.lm-mod-disabled {
  display: none;
}

/*-----------------------------------------------------------------------------
| Search
|----------------------------------------------------------------------------*/

.lm-CommandPalette-search {
  padding: 4px;
  background-color: var(--jp-layout-color1);
  z-index: 2;
}

.lm-CommandPalette-wrapper {
  overflow: overlay;
  padding: 0 9px;
  background-color: var(--jp-input-active-background);
  height: 30px;
  box-shadow: inset 0 0 0 var(--jp-border-width) var(--jp-input-border-color);
}

.lm-CommandPalette.lm-mod-focused .lm-CommandPalette-wrapper {
  box-shadow: inset 0 0 0 1px var(--jp-input-active-box-shadow-color),
    inset 0 0 0 3px var(--jp-input-active-box-shadow-color);
}

.jp-SearchIconGroup {
  color: white;
  background-color: var(--jp-brand-color1);
  position: absolute;
  top: 4px;
  right: 4px;
  padding: 5px 5px 1px;
}

.jp-SearchIconGroup svg {
  height: 20px;
  width: 20px;
}

.jp-SearchIconGroup .jp-icon3[fill] {
  fill: var(--jp-layout-color0);
}

.lm-CommandPalette-input {
  background: transparent;
  width: calc(100% - 18px);
  float: left;
  border: none;
  outline: none;
  font-size: var(--jp-ui-font-size1);
  color: var(--jp-ui-font-color0);
  line-height: var(--jp-private-commandpalette-search-height);
}

.lm-CommandPalette-input::-webkit-input-placeholder,
.lm-CommandPalette-input::-moz-placeholder,
.lm-CommandPalette-input:-ms-input-placeholder {
  color: var(--jp-ui-font-color2);
  font-size: var(--jp-ui-font-size1);
}

/*-----------------------------------------------------------------------------
| Results
|----------------------------------------------------------------------------*/

.lm-CommandPalette-header:first-child {
  margin-top: 0;
}

.lm-CommandPalette-header {
  border-bottom: solid var(--jp-border-width) var(--jp-border-color2);
  color: var(--jp-ui-font-color1);
  cursor: pointer;
  display: flex;
  font-size: var(--jp-ui-font-size0);
  font-weight: 600;
  letter-spacing: 1px;
  margin-top: 8px;
  padding: 8px 0 8px 12px;
  text-transform: uppercase;
}

.lm-CommandPalette-header.lm-mod-active {
  background: var(--jp-layout-color2);
}

.lm-CommandPalette-header > mark {
  background-color: transparent;
  font-weight: bold;
  color: var(--jp-ui-font-color1);
}

.lm-CommandPalette-item {
  padding: 4px 12px 4px 4px;
  color: var(--jp-ui-font-color1);
  font-size: var(--jp-ui-font-size1);
  font-weight: 400;
  display: flex;
}

.lm-CommandPalette-item.lm-mod-disabled {
  color: var(--jp-ui-font-color2);
}

.lm-CommandPalette-item.lm-mod-active {
  color: var(--jp-ui-inverse-font-color1);
  background: var(--jp-brand-color1);
}

.lm-CommandPalette-item.lm-mod-active .lm-CommandPalette-itemLabel > mark {
  color: var(--jp-ui-inverse-font-color0);
}

.lm-CommandPalette-item.lm-mod-active .jp-icon-selectable[fill] {
  fill: var(--jp-layout-color0);
}

.lm-CommandPalette-item.lm-mod-active:hover:not(.lm-mod-disabled) {
  color: var(--jp-ui-inverse-font-color1);
  background: var(--jp-brand-color1);
}

.lm-CommandPalette-item:hover:not(.lm-mod-active):not(.lm-mod-disabled) {
  background: var(--jp-layout-color2);
}

.lm-CommandPalette-itemContent {
  overflow: hidden;
}

.lm-CommandPalette-itemLabel > mark {
  color: var(--jp-ui-font-color0);
  background-color: transparent;
  font-weight: bold;
}

.lm-CommandPalette-item.lm-mod-disabled mark {
  color: var(--jp-ui-font-color2);
}

.lm-CommandPalette-item .lm-CommandPalette-itemIcon {
  margin: 0 4px 0 0;
  position: relative;
  width: 16px;
  top: 2px;
  flex: 0 0 auto;
}

.lm-CommandPalette-item.lm-mod-disabled .lm-CommandPalette-itemIcon {
  opacity: 0.6;
}

.lm-CommandPalette-item .lm-CommandPalette-itemShortcut {
  flex: 0 0 auto;
}

.lm-CommandPalette-itemCaption {
  display: none;
}

.lm-CommandPalette-content {
  background-color: var(--jp-layout-color1);
}

.lm-CommandPalette-content:empty::after {
  content: 'No results';
  margin: auto;
  margin-top: 20px;
  width: 100px;
  display: block;
  font-size: var(--jp-ui-font-size2);
  font-family: var(--jp-ui-font-family);
  font-weight: lighter;
}

.lm-CommandPalette-emptyMessage {
  text-align: center;
  margin-top: 24px;
  line-height: 1.32;
  padding: 0 8px;
  color: var(--jp-content-font-color3);
}

/*-----------------------------------------------------------------------------
| Copyright (c) 2014-2017, Jupyter Development Team.
|
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-Dialog {
  position: absolute;
  z-index: 10000;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  top: 0;
  left: 0;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  background: var(--jp-dialog-background);
}

.jp-Dialog-content {
  display: flex;
  flex-direction: column;
  margin-left: auto;
  margin-right: auto;
  background: var(--jp-layout-color1);
  padding: 24px 24px 12px;
  min-width: 300px;
  min-height: 150px;
  max-width: 1000px;
  max-height: 500px;
  box-sizing: border-box;
  box-shadow: var(--jp-elevation-z20);
  word-wrap: break-word;
  border-radius: var(--jp-border-radius);

  /* This is needed so that all font sizing of children done in ems is
   * relative to this base size */
  font-size: var(--jp-ui-font-size1);
  color: var(--jp-ui-font-color1);
  resize: both;
}

.jp-Dialog-content.jp-Dialog-content-small {
  max-width: 500px;
}

.jp-Dialog-button {
  overflow: visible;
}

button.jp-Dialog-button:focus {
  outline: 1px solid var(--jp-brand-color1);
  outline-offset: 4px;
  -moz-outline-radius: 0;
}

button.jp-Dialog-button:focus::-moz-focus-inner {
  border: 0;
}

button.jp-Dialog-button.jp-mod-styled.jp-mod-accept:focus,
button.jp-Dialog-button.jp-mod-styled.jp-mod-warn:focus,
button.jp-Dialog-button.jp-mod-styled.jp-mod-reject:focus {
  outline-offset: 4px;
  -moz-outline-radius: 0;
}

button.jp-Dialog-button.jp-mod-styled.jp-mod-accept:focus {
  outline: 1px solid var(--jp-accept-color-normal, var(--jp-brand-color1));
}

button.jp-Dialog-button.jp-mod-styled.jp-mod-warn:focus {
  outline: 1px solid var(--jp-warn-color-normal, var(--jp-error-color1));
}

button.jp-Dialog-button.jp-mod-styled.jp-mod-reject:focus {
  outline: 1px solid var(--jp-reject-color-normal, var(--md-grey-600));
}

button.jp-Dialog-close-button {
  padding: 0;
  height: 100%;
  min-width: unset;
  min-height: unset;
}

.jp-Dialog-header {
  display: flex;
  justify-content: space-between;
  flex: 0 0 auto;
  padding-bottom: 12px;
  font-size: var(--jp-ui-font-size3);
  font-weight: 400;
  color: var(--jp-ui-font-color1);
}

.jp-Dialog-body {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  font-size: var(--jp-ui-font-size1);
  background: var(--jp-layout-color1);
  color: var(--jp-ui-font-color1);
  overflow: auto;
}

.jp-Dialog-footer {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: center;
  flex: 0 0 auto;
  margin-left: -12px;
  margin-right: -12px;
  padding: 12px;
}

.jp-Dialog-checkbox {
  padding-right: 5px;
}

.jp-Dialog-checkbox > input:focus-visible {
  outline: 1px solid var(--jp-input-active-border-color);
  outline-offset: 1px;
}

.jp-Dialog-spacer {
  flex: 1 1 auto;
}

.jp-Dialog-title {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.jp-Dialog-body > .jp-select-wrapper {
  width: 100%;
}

.jp-Dialog-body > button {
  padding: 0 16px;
}

.jp-Dialog-body > label {
  line-height: 1.4;
  color: var(--jp-ui-font-color0);
}

.jp-Dialog-button.jp-mod-styled:not(:last-child) {
  margin-right: 12px;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

.jp-Input-Boolean-Dialog {
  flex-direction: row-reverse;
  align-items: end;
  width: 100%;
}

.jp-Input-Boolean-Dialog > label {
  flex: 1 1 auto;
}

/*-----------------------------------------------------------------------------
| Copyright (c) 2014-2016, Jupyter Development Team.
|
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-MainAreaWidget > :focus {
  outline: none;
}

.jp-MainAreaWidget .jp-MainAreaWidget-error {
  padding: 6px;
}

.jp-MainAreaWidget .jp-MainAreaWidget-error > pre {
  width: auto;
  padding: 10px;
  background: var(--jp-error-color3);
  border: var(--jp-border-width) solid var(--jp-error-color1);
  border-radius: var(--jp-border-radius);
  color: var(--jp-ui-font-color1);
  font-size: var(--jp-ui-font-size1);
  white-space: pre-wrap;
  word-wrap: break-word;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/**
 * google-material-color v1.2.6
 * https://github.com/danlevan/google-material-color
 */
:root {
  --md-red-50: #ffebee;
  --md-red-100: #ffcdd2;
  --md-red-200: #ef9a9a;
  --md-red-300: #e57373;
  --md-red-400: #ef5350;
  --md-red-500: #f44336;
  --md-red-600: #e53935;
  --md-red-700: #d32f2f;
  --md-red-800: #c62828;
  --md-red-900: #b71c1c;
  --md-red-A100: #ff8a80;
  --md-red-A200: #ff5252;
  --md-red-A400: #ff1744;
  --md-red-A700: #d50000;
  --md-pink-50: #fce4ec;
  --md-pink-100: #f8bbd0;
  --md-pink-200: #f48fb1;
  --md-pink-300: #f06292;
  --md-pink-400: #ec407a;
  --md-pink-500: #e91e63;
  --md-pink-600: #d81b60;
  --md-pink-700: #c2185b;
  --md-pink-800: #ad1457;
  --md-pink-900: #880e4f;
  --md-pink-A100: #ff80ab;
  --md-pink-A200: #ff4081;
  --md-pink-A400: #f50057;
  --md-pink-A700: #c51162;
  --md-purple-50: #f3e5f5;
  --md-purple-100: #e1bee7;
  --md-purple-200: #ce93d8;
  --md-purple-300: #ba68c8;
  --md-purple-400: #ab47bc;
  --md-purple-500: #9c27b0;
  --md-purple-600: #8e24aa;
  --md-purple-700: #7b1fa2;
  --md-purple-800: #6a1b9a;
  --md-purple-900: #4a148c;
  --md-purple-A100: #ea80fc;
  --md-purple-A200: #e040fb;
  --md-purple-A400: #d500f9;
  --md-purple-A700: #a0f;
  --md-deep-purple-50: #ede7f6;
  --md-deep-purple-100: #d1c4e9;
  --md-deep-purple-200: #b39ddb;
  --md-deep-purple-300: #9575cd;
  --md-deep-purple-400: #7e57c2;
  --md-deep-purple-500: #673ab7;
  --md-deep-purple-600: #5e35b1;
  --md-deep-purple-700: #512da8;
  --md-deep-purple-800: #4527a0;
  --md-deep-purple-900: #311b92;
  --md-deep-purple-A100: #b388ff;
  --md-deep-purple-A200: #7c4dff;
  --md-deep-purple-A400: #651fff;
  --md-deep-purple-A700: #6200ea;
  --md-indigo-50: #e8eaf6;
  --md-indigo-100: #c5cae9;
  --md-indigo-200: #9fa8da;
  --md-indigo-300: #7986cb;
  --md-indigo-400: #5c6bc0;
  --md-indigo-500: #3f51b5;
  --md-indigo-600: #3949ab;
  --md-indigo-700: #303f9f;
  --md-indigo-800: #283593;
  --md-indigo-900: #1a237e;
  --md-indigo-A100: #8c9eff;
  --md-indigo-A200: #536dfe;
  --md-indigo-A400: #3d5afe;
  --md-indigo-A700: #304ffe;
  --md-blue-50: #e3f2fd;
  --md-blue-100: #bbdefb;
  --md-blue-200: #90caf9;
  --md-blue-300: #64b5f6;
  --md-blue-400: #42a5f5;
  --md-blue-500: #2196f3;
  --md-blue-600: #1e88e5;
  --md-blue-700: #1976d2;
  --md-blue-800: #1565c0;
  --md-blue-900: #0d47a1;
  --md-blue-A100: #82b1ff;
  --md-blue-A200: #448aff;
  --md-blue-A400: #2979ff;
  --md-blue-A700: #2962ff;
  --md-light-blue-50: #e1f5fe;
  --md-light-blue-100: #b3e5fc;
  --md-light-blue-200: #81d4fa;
  --md-light-blue-300: #4fc3f7;
  --md-light-blue-400: #29b6f6;
  --md-light-blue-500: #03a9f4;
  --md-light-blue-600: #039be5;
  --md-light-blue-700: #0288d1;
  --md-light-blue-800: #0277bd;
  --md-light-blue-900: #01579b;
  --md-light-blue-A100: #80d8ff;
  --md-light-blue-A200: #40c4ff;
  --md-light-blue-A400: #00b0ff;
  --md-light-blue-A700: #0091ea;
  --md-cyan-50: #e0f7fa;
  --md-cyan-100: #b2ebf2;
  --md-cyan-200: #80deea;
  --md-cyan-300: #4dd0e1;
  --md-cyan-400: #26c6da;
  --md-cyan-500: #00bcd4;
  --md-cyan-600: #00acc1;
  --md-cyan-700: #0097a7;
  --md-cyan-800: #00838f;
  --md-cyan-900: #006064;
  --md-cyan-A100: #84ffff;
  --md-cyan-A200: #18ffff;
  --md-cyan-A400: #00e5ff;
  --md-cyan-A700: #00b8d4;
  --md-teal-50: #e0f2f1;
  --md-teal-100: #b2dfdb;
  --md-teal-200: #80cbc4;
  --md-teal-300: #4db6ac;
  --md-teal-400: #26a69a;
  --md-teal-500: #009688;
  --md-teal-600: #00897b;
  --md-teal-700: #00796b;
  --md-teal-800: #00695c;
  --md-teal-900: #004d40;
  --md-teal-A100: #a7ffeb;
  --md-teal-A200: #64ffda;
  --md-teal-A400: #1de9b6;
  --md-teal-A700: #00bfa5;
  --md-green-50: #e8f5e9;
  --md-green-100: #c8e6c9;
  --md-green-200: #a5d6a7;
  --md-green-300: #81c784;
  --md-green-400: #66bb6a;
  --md-green-500: #4caf50;
  --md-green-600: #43a047;
  --md-green-700: #388e3c;
  --md-green-800: #2e7d32;
  --md-green-900: #1b5e20;
  --md-green-A100: #b9f6ca;
  --md-green-A200: #69f0ae;
  --md-green-A400: #00e676;
  --md-green-A700: #00c853;
  --md-light-green-50: #f1f8e9;
  --md-light-green-100: #dcedc8;
  --md-light-green-200: #c5e1a5;
  --md-light-green-300: #aed581;
  --md-light-green-400: #9ccc65;
  --md-light-green-500: #8bc34a;
  --md-light-green-600: #7cb342;
  --md-light-green-700: #689f38;
  --md-light-green-800: #558b2f;
  --md-light-green-900: #33691e;
  --md-light-green-A100: #ccff90;
  --md-light-green-A200: #b2ff59;
  --md-light-green-A400: #76ff03;
  --md-light-green-A700: #64dd17;
  --md-lime-50: #f9fbe7;
  --md-lime-100: #f0f4c3;
  --md-lime-200: #e6ee9c;
  --md-lime-300: #dce775;
  --md-lime-400: #d4e157;
  --md-lime-500: #cddc39;
  --md-lime-600: #c0ca33;
  --md-lime-700: #afb42b;
  --md-lime-800: #9e9d24;
  --md-lime-900: #827717;
  --md-lime-A100: #f4ff81;
  --md-lime-A200: #eeff41;
  --md-lime-A400: #c6ff00;
  --md-lime-A700: #aeea00;
  --md-yellow-50: #fffde7;
  --md-yellow-100: #fff9c4;
  --md-yellow-200: #fff59d;
  --md-yellow-300: #fff176;
  --md-yellow-400: #ffee58;
  --md-yellow-500: #ffeb3b;
  --md-yellow-600: #fdd835;
  --md-yellow-700: #fbc02d;
  --md-yellow-800: #f9a825;
  --md-yellow-900: #f57f17;
  --md-yellow-A100: #ffff8d;
  --md-yellow-A200: #ff0;
  --md-yellow-A400: #ffea00;
  --md-yellow-A700: #ffd600;
  --md-amber-50: #fff8e1;
  --md-amber-100: #ffecb3;
  --md-amber-200: #ffe082;
  --md-amber-300: #ffd54f;
  --md-amber-400: #ffca28;
  --md-amber-500: #ffc107;
  --md-amber-600: #ffb300;
  --md-amber-700: #ffa000;
  --md-amber-800: #ff8f00;
  --md-amber-900: #ff6f00;
  --md-amber-A100: #ffe57f;
  --md-amber-A200: #ffd740;
  --md-amber-A400: #ffc400;
  --md-amber-A700: #ffab00;
  --md-orange-50: #fff3e0;
  --md-orange-100: #ffe0b2;
  --md-orange-200: #ffcc80;
  --md-orange-300: #ffb74d;
  --md-orange-400: #ffa726;
  --md-orange-500: #ff9800;
  --md-orange-600: #fb8c00;
  --md-orange-700: #f57c00;
  --md-orange-800: #ef6c00;
  --md-orange-900: #e65100;
  --md-orange-A100: #ffd180;
  --md-orange-A200: #ffab40;
  --md-orange-A400: #ff9100;
  --md-orange-A700: #ff6d00;
  --md-deep-orange-50: #fbe9e7;
  --md-deep-orange-100: #ffccbc;
  --md-deep-orange-200: #ffab91;
  --md-deep-orange-300: #ff8a65;
  --md-deep-orange-400: #ff7043;
  --md-deep-orange-500: #ff5722;
  --md-deep-orange-600: #f4511e;
  --md-deep-orange-700: #e64a19;
  --md-deep-orange-800: #d84315;
  --md-deep-orange-900: #bf360c;
  --md-deep-orange-A100: #ff9e80;
  --md-deep-orange-A200: #ff6e40;
  --md-deep-orange-A400: #ff3d00;
  --md-deep-orange-A700: #dd2c00;
  --md-brown-50: #efebe9;
  --md-brown-100: #d7ccc8;
  --md-brown-200: #bcaaa4;
  --md-brown-300: #a1887f;
  --md-brown-400: #8d6e63;
  --md-brown-500: #795548;
  --md-brown-600: #6d4c41;
  --md-brown-700: #5d4037;
  --md-brown-800: #4e342e;
  --md-brown-900: #3e2723;
  --md-grey-50: #fafafa;
  --md-grey-100: #f5f5f5;
  --md-grey-200: #eee;
  --md-grey-300: #e0e0e0;
  --md-grey-400: #bdbdbd;
  --md-grey-500: #9e9e9e;
  --md-grey-600: #757575;
  --md-grey-700: #616161;
  --md-grey-800: #424242;
  --md-grey-900: #212121;
  --md-blue-grey-50: #eceff1;
  --md-blue-grey-100: #cfd8dc;
  --md-blue-grey-200: #b0bec5;
  --md-blue-grey-300: #90a4ae;
  --md-blue-grey-400: #78909c;
  --md-blue-grey-500: #607d8b;
  --md-blue-grey-600: #546e7a;
  --md-blue-grey-700: #455a64;
  --md-blue-grey-800: #37474f;
  --md-blue-grey-900: #263238;
}

/*-----------------------------------------------------------------------------
| Copyright (c) 2014-2017, Jupyter Development Team.
|
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| RenderedText
|----------------------------------------------------------------------------*/

:root {
  /* This is the padding value to fill the gaps between lines containing spans with background color. */
  --jp-private-code-span-padding: calc(
    (var(--jp-code-line-height) - 1) * var(--jp-code-font-size) / 2
  );
}

.jp-RenderedText {
  text-align: left;
  padding-left: var(--jp-code-padding);
  line-height: var(--jp-code-line-height);
  font-family: var(--jp-code-font-family);
}

.jp-RenderedText pre,
.jp-RenderedJavaScript pre,
.jp-RenderedHTMLCommon pre {
  color: var(--jp-content-font-color1);
  font-size: var(--jp-code-font-size);
  border: none;
  margin: 0;
  padding: 0;
}

.jp-RenderedText pre a:link {
  text-decoration: none;
  color: var(--jp-content-link-color);
}

.jp-RenderedText pre a:hover {
  text-decoration: underline;
  color: var(--jp-content-link-color);
}

.jp-RenderedText pre a:visited {
  text-decoration: none;
  color: var(--jp-content-link-color);
}

/* console foregrounds and backgrounds */
.jp-RenderedText pre .ansi-black-fg {
  color: #3e424d;
}

.jp-RenderedText pre .ansi-red-fg {
  color: #e75c58;
}

.jp-RenderedText pre .ansi-green-fg {
  color: #00a250;
}

.jp-RenderedText pre .ansi-yellow-fg {
  color: #ddb62b;
}

.jp-RenderedText pre .ansi-blue-fg {
  color: #208ffb;
}

.jp-RenderedText pre .ansi-magenta-fg {
  color: #d160c4;
}

.jp-RenderedText pre .ansi-cyan-fg {
  color: #60c6c8;
}

.jp-RenderedText pre .ansi-white-fg {
  color: #c5c1b4;
}

.jp-RenderedText pre .ansi-black-bg {
  background-color: #3e424d;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-red-bg {
  background-color: #e75c58;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-green-bg {
  background-color: #00a250;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-yellow-bg {
  background-color: #ddb62b;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-blue-bg {
  background-color: #208ffb;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-magenta-bg {
  background-color: #d160c4;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-cyan-bg {
  background-color: #60c6c8;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-white-bg {
  background-color: #c5c1b4;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-black-intense-fg {
  color: #282c36;
}

.jp-RenderedText pre .ansi-red-intense-fg {
  color: #b22b31;
}

.jp-RenderedText pre .ansi-green-intense-fg {
  color: #007427;
}

.jp-RenderedText pre .ansi-yellow-intense-fg {
  color: #b27d12;
}

.jp-RenderedText pre .ansi-blue-intense-fg {
  color: #0065ca;
}

.jp-RenderedText pre .ansi-magenta-intense-fg {
  color: #a03196;
}

.jp-RenderedText pre .ansi-cyan-intense-fg {
  color: #258f8f;
}

.jp-RenderedText pre .ansi-white-intense-fg {
  color: #a1a6b2;
}

.jp-RenderedText pre .ansi-black-intense-bg {
  background-color: #282c36;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-red-intense-bg {
  background-color: #b22b31;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-green-intense-bg {
  background-color: #007427;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-yellow-intense-bg {
  background-color: #b27d12;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-blue-intense-bg {
  background-color: #0065ca;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-magenta-intense-bg {
  background-color: #a03196;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-cyan-intense-bg {
  background-color: #258f8f;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-white-intense-bg {
  background-color: #a1a6b2;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-default-inverse-fg {
  color: var(--jp-ui-inverse-font-color0);
}

.jp-RenderedText pre .ansi-default-inverse-bg {
  background-color: var(--jp-inverse-layout-color0);
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-bold {
  font-weight: bold;
}

.jp-RenderedText pre .ansi-underline {
  text-decoration: underline;
}

.jp-RenderedText[data-mime-type='application/vnd.jupyter.stderr'] {
  background: var(--jp-rendermime-error-background);
  padding-top: var(--jp-code-padding);
}

/*-----------------------------------------------------------------------------
| RenderedLatex
|----------------------------------------------------------------------------*/

.jp-RenderedLatex {
  color: var(--jp-content-font-color1);
  font-size: var(--jp-content-font-size1);
  line-height: var(--jp-content-line-height);
}

/* Left-justify outputs.*/
.jp-OutputArea-output.jp-RenderedLatex {
  padding: var(--jp-code-padding);
  text-align: left;
}

/*-----------------------------------------------------------------------------
| RenderedHTML
|----------------------------------------------------------------------------*/

.jp-RenderedHTMLCommon {
  color: var(--jp-content-font-color1);
  font-family: var(--jp-content-font-family);
  font-size: var(--jp-content-font-size1);
  line-height: var(--jp-content-line-height);

  /* Give a bit more R padding on Markdown text to keep line lengths reasonable */
  padding-right: 20px;
}

.jp-RenderedHTMLCommon em {
  font-style: italic;
}

.jp-RenderedHTMLCommon strong {
  font-weight: bold;
}

.jp-RenderedHTMLCommon u {
  text-decoration: underline;
}

.jp-RenderedHTMLCommon a:link {
  text-decoration: none;
  color: var(--jp-content-link-color);
}

.jp-RenderedHTMLCommon a:hover {
  text-decoration: underline;
  color: var(--jp-content-link-color);
}

.jp-RenderedHTMLCommon a:visited {
  text-decoration: none;
  color: var(--jp-content-link-color);
}

/* Headings */

.jp-RenderedHTMLCommon h1,
.jp-RenderedHTMLCommon h2,
.jp-RenderedHTMLCommon h3,
.jp-RenderedHTMLCommon h4,
.jp-RenderedHTMLCommon h5,
.jp-RenderedHTMLCommon h6 {
  line-height: var(--jp-content-heading-line-height);
  font-weight: var(--jp-content-heading-font-weight);
  font-style: normal;
  margin: var(--jp-content-heading-margin-top) 0
    var(--jp-content-heading-margin-bottom) 0;
}

.jp-RenderedHTMLCommon h1:first-child,
.jp-RenderedHTMLCommon h2:first-child,
.jp-RenderedHTMLCommon h3:first-child,
.jp-RenderedHTMLCommon h4:first-child,
.jp-RenderedHTMLCommon h5:first-child,
.jp-RenderedHTMLCommon h6:first-child {
  margin-top: calc(0.5 * var(--jp-content-heading-margin-top));
}

.jp-RenderedHTMLCommon h1:last-child,
.jp-RenderedHTMLCommon h2:last-child,
.jp-RenderedHTMLCommon h3:last-child,
.jp-RenderedHTMLCommon h4:last-child,
.jp-RenderedHTMLCommon h5:last-child,
.jp-RenderedHTMLCommon h6:last-child {
  margin-bottom: calc(0.5 * var(--jp-content-heading-margin-bottom));
}

.jp-RenderedHTMLCommon h1 {
  font-size: var(--jp-content-font-size5);
}

.jp-RenderedHTMLCommon h2 {
  font-size: var(--jp-content-font-size4);
}

.jp-RenderedHTMLCommon h3 {
  font-size: var(--jp-content-font-size3);
}

.jp-RenderedHTMLCommon h4 {
  font-size: var(--jp-content-font-size2);
}

.jp-RenderedHTMLCommon h5 {
  font-size: var(--jp-content-font-size1);
}

.jp-RenderedHTMLCommon h6 {
  font-size: var(--jp-content-font-size0);
}

/* Lists */

/* stylelint-disable selector-max-type, selector-max-compound-selectors */

.jp-RenderedHTMLCommon ul:not(.list-inline),
.jp-RenderedHTMLCommon ol:not(.list-inline) {
  padding-left: 2em;
}

.jp-RenderedHTMLCommon ul {
  list-style: disc;
}

.jp-RenderedHTMLCommon ul ul {
  list-style: square;
}

.jp-RenderedHTMLCommon ul ul ul {
  list-style: circle;
}

.jp-RenderedHTMLCommon ol {
  list-style: decimal;
}

.jp-RenderedHTMLCommon ol ol {
  list-style: upper-alpha;
}

.jp-RenderedHTMLCommon ol ol ol {
  list-style: lower-alpha;
}

.jp-RenderedHTMLCommon ol ol ol ol {
  list-style: lower-roman;
}

.jp-RenderedHTMLCommon ol ol ol ol ol {
  list-style: decimal;
}

.jp-RenderedHTMLCommon ol,
.jp-RenderedHTMLCommon ul {
  margin-bottom: 1em;
}

.jp-RenderedHTMLCommon ul ul,
.jp-RenderedHTMLCommon ul ol,
.jp-RenderedHTMLCommon ol ul,
.jp-RenderedHTMLCommon ol ol {
  margin-bottom: 0;
}

/* stylelint-enable selector-max-type, selector-max-compound-selectors */

.jp-RenderedHTMLCommon hr {
  color: var(--jp-border-color2);
  background-color: var(--jp-border-color1);
  margin-top: 1em;
  margin-bottom: 1em;
}

.jp-RenderedHTMLCommon > pre {
  margin: 1.5em 2em;
}

.jp-RenderedHTMLCommon pre,
.jp-RenderedHTMLCommon code {
  border: 0;
  background-color: var(--jp-layout-color0);
  color: var(--jp-content-font-color1);
  font-family: var(--jp-code-font-family);
  font-size: inherit;
  line-height: var(--jp-code-line-height);
  padding: 0;
  white-space: pre-wrap;
}

.jp-RenderedHTMLCommon :not(pre) > code {
  background-color: var(--jp-layout-color2);
  padding: 1px 5px;
}

/* Tables */

.jp-RenderedHTMLCommon table {
  border-collapse: collapse;
  border-spacing: 0;
  border: none;
  color: var(--jp-ui-font-color1);
  font-size: var(--jp-ui-font-size1);
  table-layout: fixed;
  margin-left: auto;
  margin-bottom: 1em;
  margin-right: auto;
}

.jp-RenderedHTMLCommon thead {
  border-bottom: var(--jp-border-width) solid var(--jp-border-color1);
  vertical-align: bottom;
}

.jp-RenderedHTMLCommon td,
.jp-RenderedHTMLCommon th,
.jp-RenderedHTMLCommon tr {
  vertical-align: middle;
  padding: 0.5em;
  line-height: normal;
  white-space: normal;
  max-width: none;
  border: none;
}

.jp-RenderedMarkdown.jp-RenderedHTMLCommon td,
.jp-RenderedMarkdown.jp-RenderedHTMLCommon th {
  max-width: none;
}

:not(.jp-RenderedMarkdown).jp-RenderedHTMLCommon td,
:not(.jp-RenderedMarkdown).jp-RenderedHTMLCommon th,
:not(.jp-RenderedMarkdown).jp-RenderedHTMLCommon tr {
  text-align: right;
}

.jp-RenderedHTMLCommon th {
  font-weight: bold;
}

.jp-RenderedHTMLCommon tbody tr:nth-child(odd) {
  background: var(--jp-layout-color0);
}

.jp-RenderedHTMLCommon tbody tr:nth-child(even) {
  background: var(--jp-rendermime-table-row-background);
}

.jp-RenderedHTMLCommon tbody tr:hover {
  background: var(--jp-rendermime-table-row-hover-background);
}

.jp-RenderedHTMLCommon p {
  text-align: left;
  margin: 0;
  margin-bottom: 1em;
}

.jp-RenderedHTMLCommon img {
  -moz-force-broken-image-icon: 1;
}

/* Restrict to direct children as other images could be nested in other content. */
.jp-RenderedHTMLCommon > img {
  display: block;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 1em;
}

/* Change color behind transparent images if they need it... */
[data-jp-theme-light='false'] .jp-RenderedImage img.jp-needs-light-background {
  background-color: var(--jp-inverse-layout-color1);
}

[data-jp-theme-light='true'] .jp-RenderedImage img.jp-needs-dark-background {
  background-color: var(--jp-inverse-layout-color1);
}

.jp-RenderedHTMLCommon img,
.jp-RenderedImage img,
.jp-RenderedHTMLCommon svg,
.jp-RenderedSVG svg {
  max-width: 100%;
  height: auto;
}

.jp-RenderedHTMLCommon img.jp-mod-unconfined,
.jp-RenderedImage img.jp-mod-unconfined,
.jp-RenderedHTMLCommon svg.jp-mod-unconfined,
.jp-RenderedSVG svg.jp-mod-unconfined {
  max-width: none;
}

.jp-RenderedHTMLCommon .alert {
  padding: var(--jp-notebook-padding);
  border: var(--jp-border-width) solid transparent;
  border-radius: var(--jp-border-radius);
  margin-bottom: 1em;
}

.jp-RenderedHTMLCommon .alert-info {
  color: var(--jp-info-color0);
  background-color: var(--jp-info-color3);
  border-color: var(--jp-info-color2);
}

.jp-RenderedHTMLCommon .alert-info hr {
  border-color: var(--jp-info-color3);
}

.jp-RenderedHTMLCommon .alert-info > p:last-child,
.jp-RenderedHTMLCommon .alert-info > ul:last-child {
  margin-bottom: 0;
}

.jp-RenderedHTMLCommon .alert-warning {
  color: var(--jp-warn-color0);
  background-color: var(--jp-warn-color3);
  border-color: var(--jp-warn-color2);
}

.jp-RenderedHTMLCommon .alert-warning hr {
  border-color: var(--jp-warn-color3);
}

.jp-RenderedHTMLCommon .alert-warning > p:last-child,
.jp-RenderedHTMLCommon .alert-warning > ul:last-child {
  margin-bottom: 0;
}

.jp-RenderedHTMLCommon .alert-success {
  color: var(--jp-success-color0);
  background-color: var(--jp-success-color3);
  border-color: var(--jp-success-color2);
}

.jp-RenderedHTMLCommon .alert-success hr {
  border-color: var(--jp-success-color3);
}

.jp-RenderedHTMLCommon .alert-success > p:last-child,
.jp-RenderedHTMLCommon .alert-success > ul:last-child {
  margin-bottom: 0;
}

.jp-RenderedHTMLCommon .alert-danger {
  color: var(--jp-error-color0);
  background-color: var(--jp-error-color3);
  border-color: var(--jp-error-color2);
}

.jp-RenderedHTMLCommon .alert-danger hr {
  border-color: var(--jp-error-color3);
}

.jp-RenderedHTMLCommon .alert-danger > p:last-child,
.jp-RenderedHTMLCommon .alert-danger > ul:last-child {
  margin-bottom: 0;
}

.jp-RenderedHTMLCommon blockquote {
  margin: 1em 2em;
  padding: 0 1em;
  border-left: 5px solid var(--jp-border-color2);
}

a.jp-InternalAnchorLink {
  visibility: hidden;
  margin-left: 8px;
  color: var(--md-blue-800);
}

h1:hover .jp-InternalAnchorLink,
h2:hover .jp-InternalAnchorLink,
h3:hover .jp-InternalAnchorLink,
h4:hover .jp-InternalAnchorLink,
h5:hover .jp-InternalAnchorLink,
h6:hover .jp-InternalAnchorLink {
  visibility: visible;
}

.jp-RenderedHTMLCommon kbd {
  background-color: var(--jp-rendermime-table-row-background);
  border: 1px solid var(--jp-border-color0);
  border-bottom-color: var(--jp-border-color2);
  border-radius: 3px;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);
  display: inline-block;
  font-size: var(--jp-ui-font-size0);
  line-height: 1em;
  padding: 0.2em 0.5em;
}

/* Most direct children of .jp-RenderedHTMLCommon have a margin-bottom of 1.0.
 * At the bottom of cells this is a bit too much as there is also spacing
 * between cells. Going all the way to 0 gets too tight between markdown and
 * code cells.
 */
.jp-RenderedHTMLCommon > *:last-child {
  margin-bottom: 0.5em;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/

.lm-cursor-backdrop {
  position: fixed;
  width: 200px;
  height: 200px;
  margin-top: -100px;
  margin-left: -100px;
  will-change: transform;
  z-index: 100;
}

.lm-mod-drag-image {
  will-change: transform;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

.jp-lineFormSearch {
  padding: 4px 12px;
  background-color: var(--jp-layout-color2);
  box-shadow: var(--jp-toolbar-box-shadow);
  z-index: 2;
  font-size: var(--jp-ui-font-size1);
}

.jp-lineFormCaption {
  font-size: var(--jp-ui-font-size0);
  line-height: var(--jp-ui-font-size1);
  margin-top: 4px;
  color: var(--jp-ui-font-color0);
}

.jp-baseLineForm {
  border: none;
  border-radius: 0;
  position: absolute;
  background-size: 16px;
  background-repeat: no-repeat;
  background-position: center;
  outline: none;
}

.jp-lineFormButtonContainer {
  top: 4px;
  right: 8px;
  height: 24px;
  padding: 0 12px;
  width: 12px;
}

.jp-lineFormButtonIcon {
  top: 0;
  right: 0;
  background-color: var(--jp-brand-color1);
  height: 100%;
  width: 100%;
  box-sizing: border-box;
  padding: 4px 6px;
}

.jp-lineFormButton {
  top: 0;
  right: 0;
  background-color: transparent;
  height: 100%;
  width: 100%;
  box-sizing: border-box;
}

.jp-lineFormWrapper {
  overflow: hidden;
  padding: 0 8px;
  border: 1px solid var(--jp-border-color0);
  background-color: var(--jp-input-active-background);
  height: 22px;
}

.jp-lineFormWrapperFocusWithin {
  border: var(--jp-border-width) solid var(--md-blue-500);
  box-shadow: inset 0 0 4px var(--md-blue-300);
}

.jp-lineFormInput {
  background: transparent;
  width: 200px;
  height: 100%;
  border: none;
  outline: none;
  color: var(--jp-ui-font-color0);
  line-height: 28px;
}

/*-----------------------------------------------------------------------------
| Copyright (c) 2014-2016, Jupyter Development Team.
|
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-JSONEditor {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.jp-JSONEditor-host {
  flex: 1 1 auto;
  border: var(--jp-border-width) solid var(--jp-input-border-color);
  border-radius: 0;
  background: var(--jp-layout-color0);
  min-height: 50px;
  padding: 1px;
}

.jp-JSONEditor.jp-mod-error .jp-JSONEditor-host {
  border-color: red;
  outline-color: red;
}

.jp-JSONEditor-header {
  display: flex;
  flex: 1 0 auto;
  padding: 0 0 0 12px;
}

.jp-JSONEditor-header label {
  flex: 0 0 auto;
}

.jp-JSONEditor-commitButton {
  height: 16px;
  width: 16px;
  background-size: 18px;
  background-repeat: no-repeat;
  background-position: center;
}

.jp-JSONEditor-host.jp-mod-focused {
  background-color: var(--jp-input-active-background);
  border: 1px solid var(--jp-input-active-border-color);
  box-shadow: var(--jp-input-box-shadow);
}

.jp-Editor.jp-mod-dropTarget {
  border: var(--jp-border-width) solid var(--jp-input-active-border-color);
  box-shadow: var(--jp-input-box-shadow);
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
.jp-DocumentSearch-input {
  border: none;
  outline: none;
  color: var(--jp-ui-font-color0);
  font-size: var(--jp-ui-font-size1);
  background-color: var(--jp-layout-color0);
  font-family: var(--jp-ui-font-family);
  padding: 2px 1px;
  resize: none;
}

.jp-DocumentSearch-overlay {
  position: absolute;
  background-color: var(--jp-toolbar-background);
  border-bottom: var(--jp-border-width) solid var(--jp-toolbar-border-color);
  border-left: var(--jp-border-width) solid var(--jp-toolbar-border-color);
  top: 0;
  right: 0;
  z-index: 7;
  min-width: 405px;
  padding: 2px;
  font-size: var(--jp-ui-font-size1);

  --jp-private-document-search-button-height: 20px;
}

.jp-DocumentSearch-overlay button {
  background-color: var(--jp-toolbar-background);
  outline: 0;
}

.jp-DocumentSearch-overlay button:hover {
  background-color: var(--jp-layout-color2);
}

.jp-DocumentSearch-overlay button:active {
  background-color: var(--jp-layout-color3);
}

.jp-DocumentSearch-overlay-row {
  display: flex;
  align-items: center;
  margin-bottom: 2px;
}

.jp-DocumentSearch-button-content {
  display: inline-block;
  cursor: pointer;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
}

.jp-DocumentSearch-button-content svg {
  width: 100%;
  height: 100%;
}

.jp-DocumentSearch-input-wrapper {
  border: var(--jp-border-width) solid var(--jp-border-color0);
  display: flex;
  background-color: var(--jp-layout-color0);
  margin: 2px;
}

.jp-DocumentSearch-input-wrapper:focus-within {
  border-color: var(--jp-cell-editor-active-border-color);
}

.jp-DocumentSearch-toggle-wrapper,
.jp-DocumentSearch-button-wrapper {
  all: initial;
  overflow: hidden;
  display: inline-block;
  border: none;
  box-sizing: border-box;
}

.jp-DocumentSearch-toggle-wrapper {
  width: 14px;
  height: 14px;
}

.jp-DocumentSearch-button-wrapper {
  width: var(--jp-private-document-search-button-height);
  height: var(--jp-private-document-search-button-height);
}

.jp-DocumentSearch-toggle-wrapper:focus,
.jp-DocumentSearch-button-wrapper:focus {
  outline: var(--jp-border-width) solid
    var(--jp-cell-editor-active-border-color);
  outline-offset: -1px;
}

.jp-DocumentSearch-toggle-wrapper,
.jp-DocumentSearch-button-wrapper,
.jp-DocumentSearch-button-content:focus {
  outline: none;
}

.jp-DocumentSearch-toggle-placeholder {
  width: 5px;
}

.jp-DocumentSearch-input-button::before {
  display: block;
  padding-top: 100%;
}

.jp-DocumentSearch-input-button-off {
  opacity: var(--jp-search-toggle-off-opacity);
}

.jp-DocumentSearch-input-button-off:hover {
  opacity: var(--jp-search-toggle-hover-opacity);
}

.jp-DocumentSearch-input-button-on {
  opacity: var(--jp-search-toggle-on-opacity);
}

.jp-DocumentSearch-index-counter {
  padding-left: 10px;
  padding-right: 10px;
  user-select: none;
  min-width: 35px;
  display: inline-block;
}

.jp-DocumentSearch-up-down-wrapper {
  display: inline-block;
  padding-right: 2px;
  margin-left: auto;
  white-space: nowrap;
}

.jp-DocumentSearch-spacer {
  margin-left: auto;
}

.jp-DocumentSearch-up-down-wrapper button {
  outline: 0;
  border: none;
  width: var(--jp-private-document-search-button-height);
  height: var(--jp-private-document-search-button-height);
  vertical-align: middle;
  margin: 1px 5px 2px;
}

.jp-DocumentSearch-up-down-button:hover {
  background-color: var(--jp-layout-color2);
}

.jp-DocumentSearch-up-down-button:active {
  background-color: var(--jp-layout-color3);
}

.jp-DocumentSearch-filter-button {
  border-radius: var(--jp-border-radius);
}

.jp-DocumentSearch-filter-button:hover {
  background-color: var(--jp-layout-color2);
}

.jp-DocumentSearch-filter-button-enabled {
  background-color: var(--jp-layout-color2);
}

.jp-DocumentSearch-filter-button-enabled:hover {
  background-color: var(--jp-layout-color3);
}

.jp-DocumentSearch-search-options {
  padding: 0 8px;
  margin-left: 3px;
  width: 100%;
  display: grid;
  justify-content: start;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  justify-items: stretch;
}

.jp-DocumentSearch-search-filter-disabled {
  color: var(--jp-ui-font-color2);
}

.jp-DocumentSearch-search-filter {
  display: flex;
  align-items: center;
  user-select: none;
}

.jp-DocumentSearch-regex-error {
  color: var(--jp-error-color0);
}

.jp-DocumentSearch-replace-button-wrapper {
  overflow: hidden;
  display: inline-block;
  box-sizing: border-box;
  border: var(--jp-border-width) solid var(--jp-border-color0);
  margin: auto 2px;
  padding: 1px 4px;
  height: calc(var(--jp-private-document-search-button-height) + 2px);
}

.jp-DocumentSearch-replace-button-wrapper:focus {
  border: var(--jp-border-width) solid var(--jp-cell-editor-active-border-color);
}

.jp-DocumentSearch-replace-button {
  display: inline-block;
  text-align: center;
  cursor: pointer;
  box-sizing: border-box;
  color: var(--jp-ui-font-color1);

  /* height - 2 * (padding of wrapper) */
  line-height: calc(var(--jp-private-document-search-button-height) - 2px);
  width: 100%;
  height: 100%;
}

.jp-DocumentSearch-replace-button:focus {
  outline: none;
}

.jp-DocumentSearch-replace-wrapper-class {
  margin-left: 14px;
  display: flex;
}

.jp-DocumentSearch-replace-toggle {
  border: none;
  background-color: var(--jp-toolbar-background);
  border-radius: var(--jp-border-radius);
}

.jp-DocumentSearch-replace-toggle:hover {
  background-color: var(--jp-layout-color2);
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.cm-editor {
  line-height: var(--jp-code-line-height);
  font-size: var(--jp-code-font-size);
  font-family: var(--jp-code-font-family);
  border: 0;
  border-radius: 0;
  height: auto;

  /* Changed to auto to autogrow */
}

.cm-editor pre {
  padding: 0 var(--jp-code-padding);
}

.jp-CodeMirrorEditor[data-type='inline'] .cm-dialog {
  background-color: var(--jp-layout-color0);
  color: var(--jp-content-font-color1);
}

.jp-CodeMirrorEditor {
  cursor: text;
}

/* When zoomed out 67% and 33% on a screen of 1440 width x 900 height */
@media screen and (min-width: 2138px) and (max-width: 4319px) {
  .jp-CodeMirrorEditor[data-type='inline'] .cm-cursor {
    border-left: var(--jp-code-cursor-width1) solid
      var(--jp-editor-cursor-color);
  }
}

/* When zoomed out less than 33% */
@media screen and (min-width: 4320px) {
  .jp-CodeMirrorEditor[data-type='inline'] .cm-cursor {
    border-left: var(--jp-code-cursor-width2) solid
      var(--jp-editor-cursor-color);
  }
}

.cm-editor.jp-mod-readOnly .cm-cursor {
  display: none;
}

.jp-CollaboratorCursor {
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: none;
  border-bottom: 3px solid;
  background-clip: content-box;
  margin-left: -5px;
  margin-right: -5px;
}

.cm-searching,
.cm-searching span {
  /* `.cm-searching span`: we need to override syntax highlighting */
  background-color: var(--jp-search-unselected-match-background-color);
  color: var(--jp-search-unselected-match-color);
}

.cm-searching::selection,
.cm-searching span::selection {
  background-color: var(--jp-search-unselected-match-background-color);
  color: var(--jp-search-unselected-match-color);
}

.jp-current-match > .cm-searching,
.jp-current-match > .cm-searching span,
.cm-searching > .jp-current-match,
.cm-searching > .jp-current-match span {
  background-color: var(--jp-search-selected-match-background-color);
  color: var(--jp-search-selected-match-color);
}

.jp-current-match > .cm-searching::selection,
.cm-searching > .jp-current-match::selection,
.jp-current-match > .cm-searching span::selection {
  background-color: var(--jp-search-selected-match-background-color);
  color: var(--jp-search-selected-match-color);
}

.cm-trailingspace {
  background-image: url();
  background-position: center left;
  background-repeat: repeat-x;
}

.jp-CollaboratorCursor-hover {
  position: absolute;
  z-index: 1;
  transform: translateX(-50%);
  color: white;
  border-radius: 3px;
  padding-left: 4px;
  padding-right: 4px;
  padding-top: 1px;
  padding-bottom: 1px;
  text-align: center;
  font-size: var(--jp-ui-font-size1);
  white-space: nowrap;
}

.jp-CodeMirror-ruler {
  border-left: 1px dashed var(--jp-border-color2);
}

/* Styles for shared cursors (remote cursor locations and selected ranges) */
.jp-CodeMirrorEditor .cm-ySelectionCaret {
  position: relative;
  border-left: 1px solid black;
  margin-left: -1px;
  margin-right: -1px;
  box-sizing: border-box;
}

.jp-CodeMirrorEditor .cm-ySelectionCaret > .cm-ySelectionInfo {
  white-space: nowrap;
  position: absolute;
  top: -1.15em;
  padding-bottom: 0.05em;
  left: -1px;
  font-size: 0.95em;
  font-family: var(--jp-ui-font-family);
  font-weight: bold;
  line-height: normal;
  user-select: none;
  color: white;
  padding-left: 2px;
  padding-right: 2px;
  z-index: 101;
  transition: opacity 0.3s ease-in-out;
}

.jp-CodeMirrorEditor .cm-ySelectionInfo {
  transition-delay: 0.7s;
  opacity: 0;
}

.jp-CodeMirrorEditor .cm-ySelectionCaret:hover > .cm-ySelectionInfo {
  opacity: 1;
  transition-delay: 0s;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-MimeDocument {
  outline: none;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Variables
|----------------------------------------------------------------------------*/

:root {
  --jp-private-filebrowser-button-height: 28px;
  --jp-private-filebrowser-button-width: 48px;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-FileBrowser .jp-SidePanel-content {
  display: flex;
  flex-direction: column;
}

.jp-FileBrowser-toolbar.jp-Toolbar {
  flex-wrap: wrap;
  row-gap: 12px;
  border-bottom: none;
  height: auto;
  margin: 8px 12px 0;
  box-shadow: none;
  padding: 0;
  justify-content: flex-start;
}

.jp-FileBrowser-Panel {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
}

.jp-BreadCrumbs {
  flex: 0 0 auto;
  margin: 8px 12px;
}

.jp-BreadCrumbs-item {
  margin: 0 2px;
  padding: 0 2px;
  border-radius: var(--jp-border-radius);
  cursor: pointer;
}

.jp-BreadCrumbs-item:hover {
  background-color: var(--jp-layout-color2);
}

.jp-BreadCrumbs-item:first-child {
  margin-left: 0;
}

.jp-BreadCrumbs-item.jp-mod-dropTarget {
  background-color: var(--jp-brand-color2);
  opacity: 0.7;
}

/*-----------------------------------------------------------------------------
| Buttons
|----------------------------------------------------------------------------*/

.jp-FileBrowser-toolbar > .jp-Toolbar-item {
  flex: 0 0 auto;
  padding-left: 0;
  padding-right: 2px;
  align-items: center;
  height: unset;
}

.jp-FileBrowser-toolbar > .jp-Toolbar-item .jp-ToolbarButtonComponent {
  width: 40px;
}

/*-----------------------------------------------------------------------------
| Other styles
|----------------------------------------------------------------------------*/

.jp-FileDialog.jp-mod-conflict input {
  color: var(--jp-error-color1);
}

.jp-FileDialog .jp-new-name-title {
  margin-top: 12px;
}

.jp-LastModified-hidden {
  display: none;
}

.jp-FileSize-hidden {
  display: none;
}

.jp-FileBrowser .lm-AccordionPanel > h3:first-child {
  display: none;
}

/*-----------------------------------------------------------------------------
| DirListing
|----------------------------------------------------------------------------*/

.jp-DirListing {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  outline: 0;
}

.jp-DirListing-header {
  flex: 0 0 auto;
  display: flex;
  flex-direction: row;
  align-items: center;
  overflow: hidden;
  border-top: var(--jp-border-width) solid var(--jp-border-color2);
  border-bottom: var(--jp-border-width) solid var(--jp-border-color1);
  box-shadow: var(--jp-toolbar-box-shadow);
  z-index: 2;
}

.jp-DirListing-headerItem {
  padding: 4px 12px 2px;
  font-weight: 500;
}

.jp-DirListing-headerItem:hover {
  background: var(--jp-layout-color2);
}

.jp-DirListing-headerItem.jp-id-name {
  flex: 1 0 84px;
}

.jp-DirListing-headerItem.jp-id-modified {
  flex: 0 0 112px;
  border-left: var(--jp-border-width) solid var(--jp-border-color2);
  text-align: right;
}

.jp-DirListing-headerItem.jp-id-filesize {
  flex: 0 0 75px;
  border-left: var(--jp-border-width) solid var(--jp-border-color2);
  text-align: right;
}

.jp-id-narrow {
  display: none;
  flex: 0 0 5px;
  padding: 4px;
  border-left: var(--jp-border-width) solid var(--jp-border-color2);
  text-align: right;
  color: var(--jp-border-color2);
}

.jp-DirListing-narrow .jp-id-narrow {
  display: block;
}

.jp-DirListing-narrow .jp-id-modified,
.jp-DirListing-narrow .jp-DirListing-itemModified {
  display: none;
}

.jp-DirListing-headerItem.jp-mod-selected {
  font-weight: 600;
}

/* increase specificity to override bundled default */
.jp-DirListing-content {
  flex: 1 1 auto;
  margin: 0;
  padding: 0;
  list-style-type: none;
  overflow: auto;
  background-color: var(--jp-layout-color1);
}

.jp-DirListing-content mark {
  color: var(--jp-ui-font-color0);
  background-color: transparent;
  font-weight: bold;
}

.jp-DirListing-content .jp-DirListing-item.jp-mod-selected mark {
  color: var(--jp-ui-inverse-font-color0);
}

/* Style the directory listing content when a user drops a file to upload */
.jp-DirListing.jp-mod-native-drop .jp-DirListing-content {
  outline: 5px dashed rgba(128, 128, 128, 0.5);
  outline-offset: -10px;
  cursor: copy;
}

.jp-DirListing-item {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 4px 12px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.jp-DirListing-checkboxWrapper {
  /* Increases hit area of checkbox. */
  padding: 4px;
}

.jp-DirListing-header
  .jp-DirListing-checkboxWrapper
  + .jp-DirListing-headerItem {
  padding-left: 4px;
}

.jp-DirListing-content .jp-DirListing-checkboxWrapper {
  position: relative;
  left: -4px;
  margin: -4px 0 -4px -8px;
}

.jp-DirListing-checkboxWrapper.jp-mod-visible {
  visibility: visible;
}

/* For devices that support hovering, hide checkboxes until hovered, selected...
*/
@media (hover: hover) {
  .jp-DirListing-checkboxWrapper {
    visibility: hidden;
  }

  .jp-DirListing-item:hover .jp-DirListing-checkboxWrapper,
  .jp-DirListing-item.jp-mod-selected .jp-DirListing-checkboxWrapper {
    visibility: visible;
  }
}

.jp-DirListing-item[data-is-dot] {
  opacity: 75%;
}

.jp-DirListing-item.jp-mod-selected {
  color: var(--jp-ui-inverse-font-color1);
  background: var(--jp-brand-color1);
}

.jp-DirListing-item.jp-mod-dropTarget {
  background: var(--jp-brand-color3);
}

.jp-DirListing-item:hover:not(.jp-mod-selected) {
  background: var(--jp-layout-color2);
}

.jp-DirListing-itemIcon {
  flex: 0 0 20px;
  margin-right: 4px;
}

.jp-DirListing-itemText {
  flex: 1 0 64px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  user-select: none;
}

.jp-DirListing-itemText:focus {
  outline-width: 2px;
  outline-color: var(--jp-inverse-layout-color1);
  outline-style: solid;
  outline-offset: 1px;
}

.jp-DirListing-item.jp-mod-selected .jp-DirListing-itemText:focus {
  outline-color: var(--jp-layout-color1);
}

.jp-DirListing-itemModified {
  flex: 0 0 125px;
  text-align: right;
}

.jp-DirListing-itemFileSize {
  flex: 0 0 90px;
  text-align: right;
}

.jp-DirListing-editor {
  flex: 1 0 64px;
  outline: none;
  border: none;
  color: var(--jp-ui-font-color1);
  background-color: var(--jp-layout-color1);
}

.jp-DirListing-item.jp-mod-running .jp-DirListing-itemIcon::before {
  color: var(--jp-success-color1);
  content: '\25CF';
  font-size: 8px;
  position: absolute;
  left: -8px;
}

.jp-DirListing-item.jp-mod-running.jp-mod-selected
  .jp-DirListing-itemIcon::before {
  color: var(--jp-ui-inverse-font-color1);
}

.jp-DirListing-item.lm-mod-drag-image,
.jp-DirListing-item.jp-mod-selected.lm-mod-drag-image {
  font-size: var(--jp-ui-font-size1);
  padding-left: 4px;
  margin-left: 4px;
  width: 160px;
  background-color: var(--jp-ui-inverse-font-color2);
  box-shadow: var(--jp-elevation-z2);
  border-radius: 0;
  color: var(--jp-ui-font-color1);
  transform: translateX(-40%) translateY(-58%);
}

.jp-Document {
  min-width: 120px;
  min-height: 120px;
  outline: none;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Main OutputArea
| OutputArea has a list of Outputs
|----------------------------------------------------------------------------*/

.jp-OutputArea {
  overflow-y: auto;
}

.jp-OutputArea-child {
  display: table;
  table-layout: fixed;
  width: 100%;
  overflow: hidden;
}

.jp-OutputPrompt {
  width: var(--jp-cell-prompt-width);
  color: var(--jp-cell-outprompt-font-color);
  font-family: var(--jp-cell-prompt-font-family);
  padding: var(--jp-code-padding);
  letter-spacing: var(--jp-cell-prompt-letter-spacing);
  line-height: var(--jp-code-line-height);
  font-size: var(--jp-code-font-size);
  border: var(--jp-border-width) solid transparent;
  opacity: var(--jp-cell-prompt-opacity);

  /* Right align prompt text, don't wrap to handle large prompt numbers */
  text-align: right;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;

  /* Disable text selection */
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.jp-OutputArea-prompt {
  display: table-cell;
  vertical-align: top;
}

.jp-OutputArea-output {
  display: table-cell;
  width: 100%;
  height: auto;
  overflow: auto;
  user-select: text;
  -moz-user-select: text;
  -webkit-user-select: text;
  -ms-user-select: text;
}

.jp-OutputArea .jp-RenderedText {
  padding-left: 1ch;
}

/**
 * Prompt overlay.
 */

.jp-OutputArea-promptOverlay {
  position: absolute;
  top: 0;
  width: var(--jp-cell-prompt-width);
  height: 100%;
  opacity: 0.5;
}

.jp-OutputArea-promptOverlay:hover {
  background: var(--jp-layout-color2);
  box-shadow: inset 0 0 1px var(--jp-inverse-layout-color0);
  cursor: zoom-out;
}

.jp-mod-outputsScrolled .jp-OutputArea-promptOverlay:hover {
  cursor: zoom-in;
}

/**
 * Isolated output.
 */
.jp-OutputArea-output.jp-mod-isolated {
  width: 100%;
  display: block;
}

/*
When drag events occur, `lm-mod-override-cursor` is added to the body.
Because iframes steal all cursor events, the following two rules are necessary
to suppress pointer events while resize drags are occurring. There may be a
better solution to this problem.
*/
body.lm-mod-override-cursor .jp-OutputArea-output.jp-mod-isolated {
  position: relative;
}

body.lm-mod-override-cursor .jp-OutputArea-output.jp-mod-isolated::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: transparent;
}

/* pre */

.jp-OutputArea-output pre {
  border: none;
  margin: 0;
  padding: 0;
  overflow-x: auto;
  overflow-y: auto;
  word-break: break-all;
  word-wrap: break-word;
  white-space: pre-wrap;
}

/* tables */

.jp-OutputArea-output.jp-RenderedHTMLCommon table {
  margin-left: 0;
  margin-right: 0;
}

/* description lists */

.jp-OutputArea-output dl,
.jp-OutputArea-output dt,
.jp-OutputArea-output dd {
  display: block;
}

.jp-OutputArea-output dl {
  width: 100%;
  overflow: hidden;
  padding: 0;
  margin: 0;
}

.jp-OutputArea-output dt {
  font-weight: bold;
  float: left;
  width: 20%;
  padding: 0;
  margin: 0;
}

.jp-OutputArea-output dd {
  float: left;
  width: 80%;
  padding: 0;
  margin: 0;
}

.jp-TrimmedOutputs pre {
  background: var(--jp-layout-color3);
  font-size: calc(var(--jp-code-font-size) * 1.4);
  text-align: center;
  text-transform: uppercase;
}

/* Hide the gutter in case of
 *  - nested output areas (e.g. in the case of output widgets)
 *  - mirrored output areas
 */
.jp-OutputArea .jp-OutputArea .jp-OutputArea-prompt {
  display: none;
}

/* Hide empty lines in the output area, for instance due to cleared widgets */
.jp-OutputArea-prompt:empty {
  padding: 0;
  border: 0;
}

/*-----------------------------------------------------------------------------
| executeResult is added to any Output-result for the display of the object
| returned by a cell
|----------------------------------------------------------------------------*/

.jp-OutputArea-output.jp-OutputArea-executeResult {
  margin-left: 0;
  width: 100%;
}

/* Text output with the Out[] prompt needs a top padding to match the
 * alignment of the Out[] prompt itself.
 */
.jp-OutputArea-executeResult .jp-RenderedText.jp-OutputArea-output {
  padding-top: var(--jp-code-padding);
  border-top: var(--jp-border-width) solid transparent;
}

/*-----------------------------------------------------------------------------
| The Stdin output
|----------------------------------------------------------------------------*/

.jp-Stdin-prompt {
  color: var(--jp-content-font-color0);
  padding-right: var(--jp-code-padding);
  vertical-align: baseline;
  flex: 0 0 auto;
}

.jp-Stdin-input {
  font-family: var(--jp-code-font-family);
  font-size: inherit;
  color: inherit;
  background-color: inherit;
  width: 42%;
  min-width: 200px;

  /* make sure input baseline aligns with prompt */
  vertical-align: baseline;

  /* padding + margin = 0.5em between prompt and cursor */
  padding: 0 0.25em;
  margin: 0 0.25em;
  flex: 0 0 70%;
}

.jp-Stdin-input::placeholder {
  opacity: 0;
}

.jp-Stdin-input:focus {
  box-shadow: none;
}

.jp-Stdin-input:focus::placeholder {
  opacity: 1;
}

/*-----------------------------------------------------------------------------
| Output Area View
|----------------------------------------------------------------------------*/

.jp-LinkedOutputView .jp-OutputArea {
  height: 100%;
  display: block;
}

.jp-LinkedOutputView .jp-OutputArea-output:only-child {
  height: 100%;
}

/*-----------------------------------------------------------------------------
| Printing
|----------------------------------------------------------------------------*/

@media print {
  .jp-OutputArea-child {
    break-inside: avoid-page;
  }
}

/*-----------------------------------------------------------------------------
| Mobile
|----------------------------------------------------------------------------*/
@media only screen and (max-width: 760px) {
  .jp-OutputPrompt {
    display: table-row;
    text-align: left;
  }

  .jp-OutputArea-child .jp-OutputArea-output {
    display: table-row;
    margin-left: var(--jp-notebook-padding);
  }
}

/* Trimmed outputs warning */
.jp-TrimmedOutputs > a {
  margin: 10px;
  text-decoration: none;
  cursor: pointer;
}

.jp-TrimmedOutputs > a:hover {
  text-decoration: none;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Table of Contents
|----------------------------------------------------------------------------*/

:root {
  --jp-private-toc-active-width: 4px;
}

.jp-TableOfContents {
  display: flex;
  flex-direction: column;
  background: var(--jp-layout-color1);
  color: var(--jp-ui-font-color1);
  font-size: var(--jp-ui-font-size1);
  height: 100%;
}

.jp-TableOfContents-placeholder {
  text-align: center;
}

.jp-TableOfContents-placeholderContent {
  color: var(--jp-content-font-color2);
  padding: 8px;
}

.jp-TableOfContents-placeholderContent > h3 {
  margin-bottom: var(--jp-content-heading-margin-bottom);
}

.jp-TableOfContents .jp-SidePanel-content {
  overflow-y: auto;
}

.jp-TableOfContents-tree {
  margin: 4px;
}

.jp-TableOfContents ol {
  list-style-type: none;
}

/* stylelint-disable-next-line selector-max-type */
.jp-TableOfContents li > ol {
  /* Align left border with triangle icon center */
  padding-left: 11px;
}

.jp-TableOfContents-content {
  /* left margin for the active heading indicator */
  margin: 0 0 0 var(--jp-private-toc-active-width);
  padding: 0;
  background-color: var(--jp-layout-color1);
}

.jp-tocItem {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.jp-tocItem-heading {
  display: flex;
  cursor: pointer;
}

.jp-tocItem-heading:hover {
  background-color: var(--jp-layout-color2);
}

.jp-tocItem-content {
  display: block;
  padding: 4px 0;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow-x: hidden;
}

.jp-tocItem-collapser {
  height: 20px;
  margin: 2px 2px 0;
  padding: 0;
  background: none;
  border: none;
  cursor: pointer;
}

.jp-tocItem-collapser:hover {
  background-color: var(--jp-layout-color3);
}

/* Active heading indicator */

.jp-tocItem-heading::before {
  content: ' ';
  background: transparent;
  width: var(--jp-private-toc-active-width);
  height: 24px;
  position: absolute;
  left: 0;
  border-radius: var(--jp-border-radius);
}

.jp-tocItem-heading.jp-tocItem-active::before {
  background-color: var(--jp-brand-color1);
}

.jp-tocItem-heading:hover.jp-tocItem-active::before {
  background: var(--jp-brand-color0);
  opacity: 1;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-Collapser {
  flex: 0 0 var(--jp-cell-collapser-width);
  padding: 0;
  margin: 0;
  border: none;
  outline: none;
  background: transparent;
  border-radius: var(--jp-border-radius);
  opacity: 1;
}

.jp-Collapser-child {
  display: block;
  width: 100%;
  box-sizing: border-box;

  /* height: 100% doesn't work because the height of its parent is computed from content */
  position: absolute;
  top: 0;
  bottom: 0;
}

/*-----------------------------------------------------------------------------
| Printing
|----------------------------------------------------------------------------*/

/*
Hiding collapsers in print mode.

Note: input and output wrappers have "display: block" propery in print mode.
*/

@media print {
  .jp-Collapser {
    display: none;
  }
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Header/Footer
|----------------------------------------------------------------------------*/

/* Hidden by zero height by default */
.jp-CellHeader,
.jp-CellFooter {
  height: 0;
  width: 100%;
  padding: 0;
  margin: 0;
  border: none;
  outline: none;
  background: transparent;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Input
|----------------------------------------------------------------------------*/

/* All input areas */
.jp-InputArea {
  display: table;
  table-layout: fixed;
  width: 100%;
  overflow: hidden;
}

.jp-InputArea-editor {
  display: table-cell;
  overflow: hidden;
  vertical-align: top;

  /* This is the non-active, default styling */
  border: var(--jp-border-width) solid var(--jp-cell-editor-border-color);
  border-radius: 0;
  background: var(--jp-cell-editor-background);
}

.jp-InputPrompt {
  display: table-cell;
  vertical-align: top;
  width: var(--jp-cell-prompt-width);
  color: var(--jp-cell-inprompt-font-color);
  font-family: var(--jp-cell-prompt-font-family);
  padding: var(--jp-code-padding);
  letter-spacing: var(--jp-cell-prompt-letter-spacing);
  opacity: var(--jp-cell-prompt-opacity);
  line-height: var(--jp-code-line-height);
  font-size: var(--jp-code-font-size);
  border: var(--jp-border-width) solid transparent;

  /* Right align prompt text, don't wrap to handle large prompt numbers */
  text-align: right;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;

  /* Disable text selection */
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/*-----------------------------------------------------------------------------
| Mobile
|----------------------------------------------------------------------------*/
@media only screen and (max-width: 760px) {
  .jp-InputArea-editor {
    display: table-row;
    margin-left: var(--jp-notebook-padding);
  }

  .jp-InputPrompt {
    display: table-row;
    text-align: left;
  }
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Placeholder
|----------------------------------------------------------------------------*/

.jp-Placeholder {
  display: table;
  table-layout: fixed;
  width: 100%;
}

.jp-Placeholder-prompt {
  display: table-cell;
  box-sizing: border-box;
}

.jp-Placeholder-content {
  display: table-cell;
  padding: 4px 6px;
  border: 1px solid transparent;
  border-radius: 0;
  background: none;
  box-sizing: border-box;
  cursor: pointer;
}

.jp-Placeholder-contentContainer {
  display: flex;
}

.jp-Placeholder-content:hover,
.jp-InputPlaceholder > .jp-Placeholder-content:hover {
  border-color: var(--jp-layout-color3);
}

.jp-Placeholder-content .jp-MoreHorizIcon {
  width: 32px;
  height: 16px;
  border: 1px solid transparent;
  border-radius: var(--jp-border-radius);
}

.jp-Placeholder-content .jp-MoreHorizIcon:hover {
  border: 1px solid var(--jp-border-color1);
  box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.25);
  background-color: var(--jp-layout-color0);
}

.jp-PlaceholderText {
  white-space: nowrap;
  overflow-x: hidden;
  color: var(--jp-inverse-layout-color3);
  font-family: var(--jp-code-font-family);
}

.jp-InputPlaceholder > .jp-Placeholder-content {
  border-color: var(--jp-cell-editor-border-color);
  background: var(--jp-cell-editor-background);
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Private CSS variables
|----------------------------------------------------------------------------*/

:root {
  --jp-private-cell-scrolling-output-offset: 5px;
}

/*-----------------------------------------------------------------------------
| Cell
|----------------------------------------------------------------------------*/

.jp-Cell {
  padding: var(--jp-cell-padding);
  margin: 0;
  border: none;
  outline: none;
  background: transparent;
}

/*-----------------------------------------------------------------------------
| Common input/output
|----------------------------------------------------------------------------*/

.jp-Cell-inputWrapper,
.jp-Cell-outputWrapper {
  display: flex;
  flex-direction: row;
  padding: 0;
  margin: 0;

  /* Added to reveal the box-shadow on the input and output collapsers. */
  overflow: visible;
}

/* Only input/output areas inside cells */
.jp-Cell-inputArea,
.jp-Cell-outputArea {
  flex: 1 1 auto;
}

/*-----------------------------------------------------------------------------
| Collapser
|----------------------------------------------------------------------------*/

/* Make the output collapser disappear when there is not output, but do so
 * in a manner that leaves it in the layout and preserves its width.
 */
.jp-Cell.jp-mod-noOutputs .jp-Cell-outputCollapser {
  border: none !important;
  background: transparent !important;
}

.jp-Cell:not(.jp-mod-noOutputs) .jp-Cell-outputCollapser {
  min-height: var(--jp-cell-collapser-min-height);
}

/*-----------------------------------------------------------------------------
| Output
|----------------------------------------------------------------------------*/

/* Put a space between input and output when there IS output */
.jp-Cell:not(.jp-mod-noOutputs) .jp-Cell-outputWrapper {
  margin-top: 5px;
}

.jp-CodeCell.jp-mod-outputsScrolled .jp-Cell-outputArea {
  overflow-y: auto;
  max-height: 24em;
  margin-left: var(--jp-private-cell-scrolling-output-offset);
  resize: vertical;
}

.jp-CodeCell.jp-mod-outputsScrolled .jp-Cell-outputArea[style*='height'] {
  max-height: unset;
}

.jp-CodeCell.jp-mod-outputsScrolled .jp-Cell-outputArea::after {
  content: ' ';
  box-shadow: inset 0 0 6px 2px rgb(0 0 0 / 30%);
  width: 100%;
  height: 100%;
  position: sticky;
  bottom: 0;
  top: 0;
  margin-top: -50%;
  float: left;
  display: block;
  pointer-events: none;
}

.jp-CodeCell.jp-mod-outputsScrolled .jp-OutputArea-child {
  padding-top: 6px;
}

.jp-CodeCell.jp-mod-outputsScrolled .jp-OutputArea-prompt {
  width: calc(
    var(--jp-cell-prompt-width) - var(--jp-private-cell-scrolling-output-offset)
  );
}

.jp-CodeCell.jp-mod-outputsScrolled .jp-OutputArea-promptOverlay {
  left: calc(-1 * var(--jp-private-cell-scrolling-output-offset));
}

/*-----------------------------------------------------------------------------
| CodeCell
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| MarkdownCell
|----------------------------------------------------------------------------*/

.jp-MarkdownOutput {
  display: table-cell;
  width: 100%;
  margin-top: 0;
  margin-bottom: 0;
  padding-left: var(--jp-code-padding);
}

.jp-MarkdownOutput.jp-RenderedHTMLCommon {
  overflow: auto;
}

/* collapseHeadingButton (show always if hiddenCellsButton is _not_ shown) */
.jp-collapseHeadingButton {
  display: flex;
  min-height: var(--jp-cell-collapser-min-height);
  font-size: var(--jp-code-font-size);
  position: absolute;
  background-color: transparent;
  background-size: 25px;
  background-repeat: no-repeat;
  background-position-x: center;
  background-position-y: top;
  background-image: var(--jp-icon-caret-down);
  right: 0;
  top: 0;
  bottom: 0;
}

.jp-collapseHeadingButton.jp-mod-collapsed {
  background-image: var(--jp-icon-caret-right);
}

/*
 set the container font size to match that of content
 so that the nested collapse buttons have the right size
*/
.jp-MarkdownCell .jp-InputPrompt {
  font-size: var(--jp-content-font-size1);
}

/*
  Align collapseHeadingButton with cell top header
  The font sizes are identical to the ones in packages/rendermime/style/base.css
*/
.jp-mod-rendered .jp-collapseHeadingButton[data-heading-level='1'] {
  font-size: var(--jp-content-font-size5);
  background-position-y: calc(0.3 * var(--jp-content-font-size5));
}

.jp-mod-rendered .jp-collapseHeadingButton[data-heading-level='2'] {
  font-size: var(--jp-content-font-size4);
  background-position-y: calc(0.3 * var(--jp-content-font-size4));
}

.jp-mod-rendered .jp-collapseHeadingButton[data-heading-level='3'] {
  font-size: var(--jp-content-font-size3);
  background-position-y: calc(0.3 * var(--jp-content-font-size3));
}

.jp-mod-rendered .jp-collapseHeadingButton[data-heading-level='4'] {
  font-size: var(--jp-content-font-size2);
  background-position-y: calc(0.3 * var(--jp-content-font-size2));
}

.jp-mod-rendered .jp-collapseHeadingButton[data-heading-level='5'] {
  font-size: var(--jp-content-font-size1);
  background-position-y: top;
}

.jp-mod-rendered .jp-collapseHeadingButton[data-heading-level='6'] {
  font-size: var(--jp-content-font-size0);
  background-position-y: top;
}

/* collapseHeadingButton (show only on (hover,active) if hiddenCellsButton is shown) */
.jp-Notebook.jp-mod-showHiddenCellsButton .jp-collapseHeadingButton {
  display: none;
}

.jp-Notebook.jp-mod-showHiddenCellsButton
  :is(.jp-MarkdownCell:hover, .jp-mod-active)
  .jp-collapseHeadingButton {
  display: flex;
}

/* showHiddenCellsButton (only show if jp-mod-showHiddenCellsButton is set, which
is a consequence of the showHiddenCellsButton option in Notebook Settings)*/
.jp-Notebook.jp-mod-showHiddenCellsButton .jp-showHiddenCellsButton {
  margin-left: calc(var(--jp-cell-prompt-width) + 2 * var(--jp-code-padding));
  margin-top: var(--jp-code-padding);
  border: 1px solid var(--jp-border-color2);
  background-color: var(--jp-border-color3) !important;
  color: var(--jp-content-font-color0) !important;
  display: flex;
}

.jp-Notebook.jp-mod-showHiddenCellsButton .jp-showHiddenCellsButton:hover {
  background-color: var(--jp-border-color2) !important;
}

.jp-showHiddenCellsButton {
  display: none;
}

/*-----------------------------------------------------------------------------
| Printing
|----------------------------------------------------------------------------*/

/*
Using block instead of flex to allow the use of the break-inside CSS property for
cell outputs.
*/

@media print {
  .jp-Cell-inputWrapper,
  .jp-Cell-outputWrapper {
    display: block;
  }
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Variables
|----------------------------------------------------------------------------*/

:root {
  --jp-notebook-toolbar-padding: 2px 5px 2px 2px;
}

/*-----------------------------------------------------------------------------

/*-----------------------------------------------------------------------------
| Styles
|----------------------------------------------------------------------------*/

.jp-NotebookPanel-toolbar {
  padding: var(--jp-notebook-toolbar-padding);

  /* disable paint containment from lumino 2.0 default strict CSS containment */
  contain: style size !important;
}

.jp-Toolbar-item.jp-Notebook-toolbarCellType .jp-select-wrapper.jp-mod-focused {
  border: none;
  box-shadow: none;
}

.jp-Notebook-toolbarCellTypeDropdown select {
  height: 24px;
  font-size: var(--jp-ui-font-size1);
  line-height: 14px;
  border-radius: 0;
  display: block;
}

.jp-Notebook-toolbarCellTypeDropdown span {
  top: 5px !important;
}

.jp-Toolbar-responsive-popup {
  position: absolute;
  height: fit-content;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-end;
  border-bottom: var(--jp-border-width) solid var(--jp-toolbar-border-color);
  box-shadow: var(--jp-toolbar-box-shadow);
  background: var(--jp-toolbar-background);
  min-height: var(--jp-toolbar-micro-height);
  padding: var(--jp-notebook-toolbar-padding);
  z-index: 1;
  right: 0;
  top: 0;
}

.jp-Toolbar > .jp-Toolbar-responsive-opener {
  margin-left: auto;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Variables
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------

/*-----------------------------------------------------------------------------
| Styles
|----------------------------------------------------------------------------*/

.jp-Notebook-ExecutionIndicator {
  position: relative;
  display: inline-block;
  height: 100%;
  z-index: 9997;
}

.jp-Notebook-ExecutionIndicator-tooltip {
  visibility: hidden;
  height: auto;
  width: max-content;
  width: -moz-max-content;
  background-color: var(--jp-layout-color2);
  color: var(--jp-ui-font-color1);
  text-align: justify;
  border-radius: 6px;
  padding: 0 5px;
  position: fixed;
  display: table;
}

.jp-Notebook-ExecutionIndicator-tooltip.up {
  transform: translateX(-50%) translateY(-100%) translateY(-32px);
}

.jp-Notebook-ExecutionIndicator-tooltip.down {
  transform: translateX(calc(-100% + 16px)) translateY(5px);
}

.jp-Notebook-ExecutionIndicator-tooltip.hidden {
  display: none;
}

.jp-Notebook-ExecutionIndicator:hover .jp-Notebook-ExecutionIndicator-tooltip {
  visibility: visible;
}

.jp-Notebook-ExecutionIndicator span {
  font-size: var(--jp-ui-font-size1);
  font-family: var(--jp-ui-font-family);
  color: var(--jp-ui-font-color1);
  line-height: 24px;
  display: block;
}

.jp-Notebook-ExecutionIndicator-progress-bar {
  display: flex;
  justify-content: center;
  height: 100%;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/*
 * Execution indicator
 */
.jp-tocItem-content::after {
  content: '';

  /* Must be identical to form a circle */
  width: 12px;
  height: 12px;
  background: none;
  border: none;
  position: absolute;
  right: 0;
}

.jp-tocItem-content[data-running='0']::after {
  border-radius: 50%;
  border: var(--jp-border-width) solid var(--jp-inverse-layout-color3);
  background: none;
}

.jp-tocItem-content[data-running='1']::after {
  border-radius: 50%;
  border: var(--jp-border-width) solid var(--jp-inverse-layout-color3);
  background-color: var(--jp-inverse-layout-color3);
}

.jp-tocItem-content[data-running='0'],
.jp-tocItem-content[data-running='1'] {
  margin-right: 12px;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

.jp-Notebook-footer {
  height: 27px;
  margin-left: calc(
    var(--jp-cell-prompt-width) + var(--jp-cell-collapser-width) +
      var(--jp-cell-padding)
  );
  width: calc(
    100% -
      (
        var(--jp-cell-prompt-width) + var(--jp-cell-collapser-width) +
          var(--jp-cell-padding) + var(--jp-cell-padding)
      )
  );
  border: var(--jp-border-width) solid var(--jp-cell-editor-border-color);
  color: var(--jp-ui-font-color3);
  margin-top: 6px;
  background: none;
  cursor: pointer;
}

.jp-Notebook-footer:focus {
  border-color: var(--jp-cell-editor-active-border-color);
}

/* For devices that support hovering, hide footer until hover */
@media (hover: hover) {
  .jp-Notebook-footer {
    opacity: 0;
  }

  .jp-Notebook-footer:focus,
  .jp-Notebook-footer:hover {
    opacity: 1;
  }
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Imports
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| CSS variables
|----------------------------------------------------------------------------*/

:root {
  --jp-side-by-side-output-size: 1fr;
  --jp-side-by-side-resized-cell: var(--jp-side-by-side-output-size);
  --jp-private-notebook-dragImage-width: 304px;
  --jp-private-notebook-dragImage-height: 36px;
  --jp-private-notebook-selected-color: var(--md-blue-400);
  --jp-private-notebook-active-color: var(--md-green-400);
}

/*-----------------------------------------------------------------------------
| Notebook
|----------------------------------------------------------------------------*/

/* stylelint-disable selector-max-class */

.jp-NotebookPanel {
  display: block;
  height: 100%;
}

.jp-NotebookPanel.jp-Document {
  min-width: 240px;
  min-height: 120px;
}

.jp-Notebook {
  padding: var(--jp-notebook-padding);
  outline: none;
  overflow: auto;
  background: var(--jp-layout-color0);
}

.jp-Notebook.jp-mod-scrollPastEnd::after {
  display: block;
  content: '';
  min-height: var(--jp-notebook-scroll-padding);
}

.jp-MainAreaWidget-ContainStrict .jp-Notebook * {
  contain: strict;
}

.jp-Notebook .jp-Cell {
  overflow: visible;
}

.jp-Notebook .jp-Cell .jp-InputPrompt {
  cursor: move;
}

/*-----------------------------------------------------------------------------
| Notebook state related styling
|
| The notebook and cells each have states, here are the possibilities:
|
| - Notebook
|   - Command
|   - Edit
| - Cell
|   - None
|   - Active (only one can be active)
|   - Selected (the cells actions are applied to)
|   - Multiselected (when multiple selected, the cursor)
|   - No outputs
|----------------------------------------------------------------------------*/

/* Command or edit modes */

.jp-Notebook .jp-Cell:not(.jp-mod-active) .jp-InputPrompt {
  opacity: var(--jp-cell-prompt-not-active-opacity);
  color: var(--jp-cell-prompt-not-active-font-color);
}

.jp-Notebook .jp-Cell:not(.jp-mod-active) .jp-OutputPrompt {
  opacity: var(--jp-cell-prompt-not-active-opacity);
  color: var(--jp-cell-prompt-not-active-font-color);
}

/* cell is active */
.jp-Notebook .jp-Cell.jp-mod-active .jp-Collapser {
  background: var(--jp-brand-color1);
}

/* cell is dirty */
.jp-Notebook .jp-Cell.jp-mod-dirty .jp-InputPrompt {
  color: var(--jp-warn-color1);
}

.jp-Notebook .jp-Cell.jp-mod-dirty .jp-InputPrompt::before {
  color: var(--jp-warn-color1);
  content: '•';
}

.jp-Notebook .jp-Cell.jp-mod-active.jp-mod-dirty .jp-Collapser {
  background: var(--jp-warn-color1);
}

/* collapser is hovered */
.jp-Notebook .jp-Cell .jp-Collapser:hover {
  box-shadow: var(--jp-elevation-z2);
  background: var(--jp-brand-color1);
  opacity: var(--jp-cell-collapser-not-active-hover-opacity);
}

/* cell is active and collapser is hovered */
.jp-Notebook .jp-Cell.jp-mod-active .jp-Collapser:hover {
  background: var(--jp-brand-color0);
  opacity: 1;
}

/* Command mode */

.jp-Notebook.jp-mod-commandMode .jp-Cell.jp-mod-selected {
  background: var(--jp-notebook-multiselected-color);
}

.jp-Notebook.jp-mod-commandMode
  .jp-Cell.jp-mod-active.jp-mod-selected:not(.jp-mod-multiSelected) {
  background: transparent;
}

/* Edit mode */

.jp-Notebook.jp-mod-editMode .jp-Cell.jp-mod-active .jp-InputArea-editor {
  border: var(--jp-border-width) solid var(--jp-cell-editor-active-border-color);
  box-shadow: var(--jp-input-box-shadow);
  background-color: var(--jp-cell-editor-active-background);
}

/*-----------------------------------------------------------------------------
| Notebook drag and drop
|----------------------------------------------------------------------------*/

.jp-Notebook-cell.jp-mod-dropSource {
  opacity: 0.5;
}

.jp-Notebook-cell.jp-mod-dropTarget,
.jp-Notebook.jp-mod-commandMode
  .jp-Notebook-cell.jp-mod-active.jp-mod-selected.jp-mod-dropTarget {
  border-top-color: var(--jp-private-notebook-selected-color);
  border-top-style: solid;
  border-top-width: 2px;
}

.jp-dragImage {
  display: block;
  flex-direction: row;
  width: var(--jp-private-notebook-dragImage-width);
  height: var(--jp-private-notebook-dragImage-height);
  border: var(--jp-border-width) solid var(--jp-cell-editor-border-color);
  background: var(--jp-cell-editor-background);
  overflow: visible;
}

.jp-dragImage-singlePrompt {
  box-shadow: 2px 2px 4px 0 rgba(0, 0, 0, 0.12);
}

.jp-dragImage .jp-dragImage-content {
  flex: 1 1 auto;
  z-index: 2;
  font-size: var(--jp-code-font-size);
  font-family: var(--jp-code-font-family);
  line-height: var(--jp-code-line-height);
  padding: var(--jp-code-padding);
  border: var(--jp-border-width) solid var(--jp-cell-editor-border-color);
  background: var(--jp-cell-editor-background-color);
  color: var(--jp-content-font-color3);
  text-align: left;
  margin: 4px 4px 4px 0;
}

.jp-dragImage .jp-dragImage-prompt {
  flex: 0 0 auto;
  min-width: 36px;
  color: var(--jp-cell-inprompt-font-color);
  padding: var(--jp-code-padding);
  padding-left: 12px;
  font-family: var(--jp-cell-prompt-font-family);
  letter-spacing: var(--jp-cell-prompt-letter-spacing);
  line-height: 1.9;
  font-size: var(--jp-code-font-size);
  border: var(--jp-border-width) solid transparent;
}

.jp-dragImage-multipleBack {
  z-index: -1;
  position: absolute;
  height: 32px;
  width: 300px;
  top: 8px;
  left: 8px;
  background: var(--jp-layout-color2);
  border: var(--jp-border-width) solid var(--jp-input-border-color);
  box-shadow: 2px 2px 4px 0 rgba(0, 0, 0, 0.12);
}

/*-----------------------------------------------------------------------------
| Cell toolbar
|----------------------------------------------------------------------------*/

.jp-NotebookTools {
  display: block;
  min-width: var(--jp-sidebar-min-width);
  color: var(--jp-ui-font-color1);
  background: var(--jp-layout-color1);

  /* This is needed so that all font sizing of children done in ems is
    * relative to this base size */
  font-size: var(--jp-ui-font-size1);
  overflow: auto;
}

.jp-ActiveCellTool {
  padding: 12px 0;
  display: flex;
}

.jp-ActiveCellTool-Content {
  flex: 1 1 auto;
}

.jp-ActiveCellTool .jp-ActiveCellTool-CellContent {
  background: var(--jp-cell-editor-background);
  border: var(--jp-border-width) solid var(--jp-cell-editor-border-color);
  border-radius: 0;
  min-height: 29px;
}

.jp-ActiveCellTool .jp-InputPrompt {
  min-width: calc(var(--jp-cell-prompt-width) * 0.75);
}

.jp-ActiveCellTool-CellContent > pre {
  padding: 5px 4px;
  margin: 0;
  white-space: normal;
}

.jp-MetadataEditorTool {
  flex-direction: column;
  padding: 12px 0;
}

.jp-RankedPanel > :not(:first-child) {
  margin-top: 12px;
}

.jp-KeySelector select.jp-mod-styled {
  font-size: var(--jp-ui-font-size1);
  color: var(--jp-ui-font-color0);
  border: var(--jp-border-width) solid var(--jp-border-color1);
}

.jp-KeySelector label,
.jp-MetadataEditorTool label,
.jp-NumberSetter label {
  line-height: 1.4;
}

.jp-NotebookTools .jp-select-wrapper {
  margin-top: 4px;
  margin-bottom: 0;
}

.jp-NumberSetter input {
  width: 100%;
  margin-top: 4px;
}

.jp-NotebookTools .jp-Collapse {
  margin-top: 16px;
}

/*-----------------------------------------------------------------------------
| Presentation Mode (.jp-mod-presentationMode)
|----------------------------------------------------------------------------*/

.jp-mod-presentationMode .jp-Notebook {
  --jp-content-font-size1: var(--jp-content-presentation-font-size1);
  --jp-code-font-size: var(--jp-code-presentation-font-size);
}

.jp-mod-presentationMode .jp-Notebook .jp-Cell .jp-InputPrompt,
.jp-mod-presentationMode .jp-Notebook .jp-Cell .jp-OutputPrompt {
  flex: 0 0 110px;
}

/*-----------------------------------------------------------------------------
| Side-by-side Mode (.jp-mod-sideBySide)
|----------------------------------------------------------------------------*/
.jp-mod-sideBySide.jp-Notebook .jp-Notebook-cell {
  margin-top: 3em;
  margin-bottom: 3em;
  margin-left: 5%;
  margin-right: 5%;
}

.jp-mod-sideBySide.jp-Notebook .jp-CodeCell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) min-content minmax(
      0,
      var(--jp-side-by-side-output-size)
    );
  grid-template-rows: auto minmax(0, 1fr) auto;
  grid-template-areas:
    'header header header'
    'input handle output'
    'footer footer footer';
}

.jp-mod-sideBySide.jp-Notebook .jp-CodeCell.jp-mod-resizedCell {
  grid-template-columns: minmax(0, 1fr) min-content minmax(
      0,
      var(--jp-side-by-side-resized-cell)
    );
}

.jp-mod-sideBySide.jp-Notebook .jp-CodeCell .jp-CellHeader {
  grid-area: header;
}

.jp-mod-sideBySide.jp-Notebook .jp-CodeCell .jp-Cell-inputWrapper {
  grid-area: input;
}

.jp-mod-sideBySide.jp-Notebook .jp-CodeCell .jp-Cell-outputWrapper {
  /* overwrite the default margin (no vertical separation needed in side by side move */
  margin-top: 0;
  grid-area: output;
}

.jp-mod-sideBySide.jp-Notebook .jp-CodeCell .jp-CellFooter {
  grid-area: footer;
}

.jp-mod-sideBySide.jp-Notebook .jp-CodeCell .jp-CellResizeHandle {
  grid-area: handle;
  user-select: none;
  display: block;
  height: 100%;
  cursor: ew-resize;
  padding: 0 var(--jp-cell-padding);
}

.jp-mod-sideBySide.jp-Notebook .jp-CodeCell .jp-CellResizeHandle::after {
  content: '';
  display: block;
  background: var(--jp-border-color2);
  height: 100%;
  width: 5px;
}

.jp-mod-sideBySide.jp-Notebook
  .jp-CodeCell.jp-mod-resizedCell
  .jp-CellResizeHandle::after {
  background: var(--jp-border-color0);
}

.jp-CellResizeHandle {
  display: none;
}

/*-----------------------------------------------------------------------------
| Placeholder
|----------------------------------------------------------------------------*/

.jp-Cell-Placeholder {
  padding-left: 55px;
}

.jp-Cell-Placeholder-wrapper {
  background: #fff;
  border: 1px solid;
  border-color: #e5e6e9 #dfe0e4 #d0d1d5;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  margin: 10px 15px;
}

.jp-Cell-Placeholder-wrapper-inner {
  padding: 15px;
  position: relative;
}

.jp-Cell-Placeholder-wrapper-body {
  background-repeat: repeat;
  background-size: 50% auto;
}

.jp-Cell-Placeholder-wrapper-body div {
  background: #f6f7f8;
  background-image: -webkit-linear-gradient(
    left,
    #f6f7f8 0%,
    #edeef1 20%,
    #f6f7f8 40%,
    #f6f7f8 100%
  );
  background-repeat: no-repeat;
  background-size: 800px 104px;
  height: 104px;
  position: absolute;
  right: 15px;
  left: 15px;
  top: 15px;
}

div.jp-Cell-Placeholder-h1 {
  top: 20px;
  height: 20px;
  left: 15px;
  width: 150px;
}

div.jp-Cell-Placeholder-h2 {
  left: 15px;
  top: 50px;
  height: 10px;
  width: 100px;
}

div.jp-Cell-Placeholder-content-1,
div.jp-Cell-Placeholder-content-2,
div.jp-Cell-Placeholder-content-3 {
  left: 15px;
  right: 15px;
  height: 10px;
}

div.jp-Cell-Placeholder-content-1 {
  top: 100px;
}

div.jp-Cell-Placeholder-content-2 {
  top: 120px;
}

div.jp-Cell-Placeholder-content-3 {
  top: 140px;
}

</style>
<style type="text/css">
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*
The following CSS variables define the main, public API for styling JupyterLab.
These variables should be used by all plugins wherever possible. In other
words, plugins should not define custom colors, sizes, etc unless absolutely
necessary. This enables users to change the visual theme of JupyterLab
by changing these variables.

Many variables appear in an ordered sequence (0,1,2,3). These sequences
are designed to work well together, so for example, `--jp-border-color1` should
be used with `--jp-layout-color1`. The numbers have the following meanings:

* 0: super-primary, reserved for special emphasis
* 1: primary, most important under normal situations
* 2: secondary, next most important under normal situations
* 3: tertiary, next most important under normal situations

Throughout JupyterLab, we are mostly following principles from Google's
Material Design when selecting colors. We are not, however, following
all of MD as it is not optimized for dense, information rich UIs.
*/

:root {
  /* Elevation
   *
   * We style box-shadows using Material Design's idea of elevation. These particular numbers are taken from here:
   *
   * https://github.com/material-components/material-components-web
   * https://material-components-web.appspot.com/elevation.html
   */

  --jp-shadow-base-lightness: 0;
  --jp-shadow-umbra-color: rgba(
    var(--jp-shadow-base-lightness),
    var(--jp-shadow-base-lightness),
    var(--jp-shadow-base-lightness),
    0.2
  );
  --jp-shadow-penumbra-color: rgba(
    var(--jp-shadow-base-lightness),
    var(--jp-shadow-base-lightness),
    var(--jp-shadow-base-lightness),
    0.14
  );
  --jp-shadow-ambient-color: rgba(
    var(--jp-shadow-base-lightness),
    var(--jp-shadow-base-lightness),
    var(--jp-shadow-base-lightness),
    0.12
  );
  --jp-elevation-z0: none;
  --jp-elevation-z1: 0 2px 1px -1px var(--jp-shadow-umbra-color),
    0 1px 1px 0 var(--jp-shadow-penumbra-color),
    0 1px 3px 0 var(--jp-shadow-ambient-color);
  --jp-elevation-z2: 0 3px 1px -2px var(--jp-shadow-umbra-color),
    0 2px 2px 0 var(--jp-shadow-penumbra-color),
    0 1px 5px 0 var(--jp-shadow-ambient-color);
  --jp-elevation-z4: 0 2px 4px -1px var(--jp-shadow-umbra-color),
    0 4px 5px 0 var(--jp-shadow-penumbra-color),
    0 1px 10px 0 var(--jp-shadow-ambient-color);
  --jp-elevation-z6: 0 3px 5px -1px var(--jp-shadow-umbra-color),
    0 6px 10px 0 var(--jp-shadow-penumbra-color),
    0 1px 18px 0 var(--jp-shadow-ambient-color);
  --jp-elevation-z8: 0 5px 5px -3px var(--jp-shadow-umbra-color),
    0 8px 10px 1px var(--jp-shadow-penumbra-color),
    0 3px 14px 2px var(--jp-shadow-ambient-color);
  --jp-elevation-z12: 0 7px 8px -4px var(--jp-shadow-umbra-color),
    0 12px 17px 2px var(--jp-shadow-penumbra-color),
    0 5px 22px 4px var(--jp-shadow-ambient-color);
  --jp-elevation-z16: 0 8px 10px -5px var(--jp-shadow-umbra-color),
    0 16px 24px 2px var(--jp-shadow-penumbra-color),
    0 6px 30px 5px var(--jp-shadow-ambient-color);
  --jp-elevation-z20: 0 10px 13px -6px var(--jp-shadow-umbra-color),
    0 20px 31px 3px var(--jp-shadow-penumbra-color),
    0 8px 38px 7px var(--jp-shadow-ambient-color);
  --jp-elevation-z24: 0 11px 15px -7px var(--jp-shadow-umbra-color),
    0 24px 38px 3px var(--jp-shadow-penumbra-color),
    0 9px 46px 8px var(--jp-shadow-ambient-color);

  /* Borders
   *
   * The following variables, specify the visual styling of borders in JupyterLab.
   */

  --jp-border-width: 1px;
  --jp-border-color0: var(--md-grey-400);
  --jp-border-color1: var(--md-grey-400);
  --jp-border-color2: var(--md-grey-300);
  --jp-border-color3: var(--md-grey-200);
  --jp-inverse-border-color: var(--md-grey-600);
  --jp-border-radius: 2px;

  /* UI Fonts
   *
   * The UI font CSS variables are used for the typography all of the JupyterLab
   * user interface elements that are not directly user generated content.
   *
   * The font sizing here is done assuming that the body font size of --jp-ui-font-size1
   * is applied to a parent element. When children elements, such as headings, are sized
   * in em all things will be computed relative to that body size.
   */

  --jp-ui-font-scale-factor: 1.2;
  --jp-ui-font-size0: 0.83333em;
  --jp-ui-font-size1: 13px; /* Base font size */
  --jp-ui-font-size2: 1.2em;
  --jp-ui-font-size3: 1.44em;
  --jp-ui-font-family: system-ui, -apple-system, blinkmacsystemfont, 'Segoe UI',
    helvetica, arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji',
    'Segoe UI Symbol';

  /*
   * Use these font colors against the corresponding main layout colors.
   * In a light theme, these go from dark to light.
   */

  /* Defaults use Material Design specification */
  --jp-ui-font-color0: rgba(0, 0, 0, 1);
  --jp-ui-font-color1: rgba(0, 0, 0, 0.87);
  --jp-ui-font-color2: rgba(0, 0, 0, 0.54);
  --jp-ui-font-color3: rgba(0, 0, 0, 0.38);

  /*
   * Use these against the brand/accent/warn/error colors.
   * These will typically go from light to darker, in both a dark and light theme.
   */

  --jp-ui-inverse-font-color0: rgba(255, 255, 255, 1);
  --jp-ui-inverse-font-color1: rgba(255, 255, 255, 1);
  --jp-ui-inverse-font-color2: rgba(255, 255, 255, 0.7);
  --jp-ui-inverse-font-color3: rgba(255, 255, 255, 0.5);

  /* Content Fonts
   *
   * Content font variables are used for typography of user generated content.
   *
   * The font sizing here is done assuming that the body font size of --jp-content-font-size1
   * is applied to a parent element. When children elements, such as headings, are sized
   * in em all things will be computed relative to that body size.
   */

  --jp-content-line-height: 1.6;
  --jp-content-font-scale-factor: 1.2;
  --jp-content-font-size0: 0.83333em;
  --jp-content-font-size1: 14px; /* Base font size */
  --jp-content-font-size2: 1.2em;
  --jp-content-font-size3: 1.44em;
  --jp-content-font-size4: 1.728em;
  --jp-content-font-size5: 2.0736em;

  /* This gives a magnification of about 125% in presentation mode over normal. */
  --jp-content-presentation-font-size1: 17px;
  --jp-content-heading-line-height: 1;
  --jp-content-heading-margin-top: 1.2em;
  --jp-content-heading-margin-bottom: 0.8em;
  --jp-content-heading-font-weight: 500;

  /* Defaults use Material Design specification */
  --jp-content-font-color0: rgba(0, 0, 0, 1);
  --jp-content-font-color1: rgba(0, 0, 0, 0.87);
  --jp-content-font-color2: rgba(0, 0, 0, 0.54);
  --jp-content-font-color3: rgba(0, 0, 0, 0.38);
  --jp-content-link-color: var(--md-blue-900);
  --jp-content-font-family: system-ui, -apple-system, blinkmacsystemfont,
    'Segoe UI', helvetica, arial, sans-serif, 'Apple Color Emoji',
    'Segoe UI Emoji', 'Segoe UI Symbol';

  /*
   * Code Fonts
   *
   * Code font variables are used for typography of code and other monospaces content.
   */

  --jp-code-font-size: 13px;
  --jp-code-line-height: 1.3077; /* 17px for 13px base */
  --jp-code-padding: 5px; /* 5px for 13px base, codemirror highlighting needs integer px value */
  --jp-code-font-family-default: menlo, consolas, 'DejaVu Sans Mono', monospace;
  --jp-code-font-family: var(--jp-code-font-family-default);

  /* This gives a magnification of about 125% in presentation mode over normal. */
  --jp-code-presentation-font-size: 16px;

  /* may need to tweak cursor width if you change font size */
  --jp-code-cursor-width0: 1.4px;
  --jp-code-cursor-width1: 2px;
  --jp-code-cursor-width2: 4px;

  /* Layout
   *
   * The following are the main layout colors use in JupyterLab. In a light
   * theme these would go from light to dark.
   */

  --jp-layout-color0: white;
  --jp-layout-color1: white;
  --jp-layout-color2: var(--md-grey-200);
  --jp-layout-color3: var(--md-grey-400);
  --jp-layout-color4: var(--md-grey-600);

  /* Inverse Layout
   *
   * The following are the inverse layout colors use in JupyterLab. In a light
   * theme these would go from dark to light.
   */

  --jp-inverse-layout-color0: #111;
  --jp-inverse-layout-color1: var(--md-grey-900);
  --jp-inverse-layout-color2: var(--md-grey-800);
  --jp-inverse-layout-color3: var(--md-grey-700);
  --jp-inverse-layout-color4: var(--md-grey-600);

  /* Brand/accent */

  --jp-brand-color0: var(--md-blue-900);
  --jp-brand-color1: var(--md-blue-700);
  --jp-brand-color2: var(--md-blue-300);
  --jp-brand-color3: var(--md-blue-100);
  --jp-brand-color4: var(--md-blue-50);
  --jp-accent-color0: var(--md-green-900);
  --jp-accent-color1: var(--md-green-700);
  --jp-accent-color2: var(--md-green-300);
  --jp-accent-color3: var(--md-green-100);

  /* State colors (warn, error, success, info) */

  --jp-warn-color0: var(--md-orange-900);
  --jp-warn-color1: var(--md-orange-700);
  --jp-warn-color2: var(--md-orange-300);
  --jp-warn-color3: var(--md-orange-100);
  --jp-error-color0: var(--md-red-900);
  --jp-error-color1: var(--md-red-700);
  --jp-error-color2: var(--md-red-300);
  --jp-error-color3: var(--md-red-100);
  --jp-success-color0: var(--md-green-900);
  --jp-success-color1: var(--md-green-700);
  --jp-success-color2: var(--md-green-300);
  --jp-success-color3: var(--md-green-100);
  --jp-info-color0: var(--md-cyan-900);
  --jp-info-color1: var(--md-cyan-700);
  --jp-info-color2: var(--md-cyan-300);
  --jp-info-color3: var(--md-cyan-100);

  /* Cell specific styles */

  --jp-cell-padding: 5px;
  --jp-cell-collapser-width: 8px;
  --jp-cell-collapser-min-height: 20px;
  --jp-cell-collapser-not-active-hover-opacity: 0.6;
  --jp-cell-editor-background: var(--md-grey-100);
  --jp-cell-editor-border-color: var(--md-grey-300);
  --jp-cell-editor-box-shadow: inset 0 0 2px var(--md-blue-300);
  --jp-cell-editor-active-background: var(--jp-layout-color0);
  --jp-cell-editor-active-border-color: var(--jp-brand-color1);
  --jp-cell-prompt-width: 64px;
  --jp-cell-prompt-font-family: var(--jp-code-font-family-default);
  --jp-cell-prompt-letter-spacing: 0;
  --jp-cell-prompt-opacity: 1;
  --jp-cell-prompt-not-active-opacity: 0.5;
  --jp-cell-prompt-not-active-font-color: var(--md-grey-700);

  /* A custom blend of MD grey and blue 600
   * See https://meyerweb.com/eric/tools/color-blend/#546E7A:1E88E5:5:hex */
  --jp-cell-inprompt-font-color: #307fc1;

  /* A custom blend of MD grey and orange 600
   * https://meyerweb.com/eric/tools/color-blend/#546E7A:F4511E:5:hex */
  --jp-cell-outprompt-font-color: #bf5b3d;

  /* Notebook specific styles */

  --jp-notebook-padding: 10px;
  --jp-notebook-select-background: var(--jp-layout-color1);
  --jp-notebook-multiselected-color: var(--md-blue-50);

  /* The scroll padding is calculated to fill enough space at the bottom of the
  notebook to show one single-line cell (with appropriate padding) at the top
  when the notebook is scrolled all the way to the bottom. We also subtract one
  pixel so that no scrollbar appears if we have just one single-line cell in the
  notebook. This padding is to enable a 'scroll past end' feature in a notebook.
  */
  --jp-notebook-scroll-padding: calc(
    100% - var(--jp-code-font-size) * var(--jp-code-line-height) -
      var(--jp-code-padding) - var(--jp-cell-padding) - 1px
  );

  /* Rendermime styles */

  --jp-rendermime-error-background: #fdd;
  --jp-rendermime-table-row-background: var(--md-grey-100);
  --jp-rendermime-table-row-hover-background: var(--md-light-blue-50);

  /* Dialog specific styles */

  --jp-dialog-background: rgba(0, 0, 0, 0.25);

  /* Console specific styles */

  --jp-console-padding: 10px;

  /* Toolbar specific styles */

  --jp-toolbar-border-color: var(--jp-border-color1);
  --jp-toolbar-micro-height: 8px;
  --jp-toolbar-background: var(--jp-layout-color1);
  --jp-toolbar-box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.24);
  --jp-toolbar-header-margin: 4px 4px 0 4px;
  --jp-toolbar-active-background: var(--md-grey-300);

  /* Statusbar specific styles */

  --jp-statusbar-height: 24px;

  /* Input field styles */

  --jp-input-box-shadow: inset 0 0 2px var(--md-blue-300);
  --jp-input-active-background: var(--jp-layout-color1);
  --jp-input-hover-background: var(--jp-layout-color1);
  --jp-input-background: var(--md-grey-100);
  --jp-input-border-color: var(--jp-inverse-border-color);
  --jp-input-active-border-color: var(--jp-brand-color1);
  --jp-input-active-box-shadow-color: rgba(19, 124, 189, 0.3);

  /* General editor styles */

  --jp-editor-selected-background: #d9d9d9;
  --jp-editor-selected-focused-background: #d7d4f0;
  --jp-editor-cursor-color: var(--jp-ui-font-color0);

  /* Code mirror specific styles */

  --jp-mirror-editor-keyword-color: #008000;
  --jp-mirror-editor-atom-color: #88f;
  --jp-mirror-editor-number-color: #080;
  --jp-mirror-editor-def-color: #00f;
  --jp-mirror-editor-variable-color: var(--md-grey-900);
  --jp-mirror-editor-variable-2-color: rgb(0, 54, 109);
  --jp-mirror-editor-variable-3-color: #085;
  --jp-mirror-editor-punctuation-color: #05a;
  --jp-mirror-editor-property-color: #05a;
  --jp-mirror-editor-operator-color: #a2f;
  --jp-mirror-editor-comment-color: #408080;
  --jp-mirror-editor-string-color: #ba2121;
  --jp-mirror-editor-string-2-color: #708;
  --jp-mirror-editor-meta-color: #a2f;
  --jp-mirror-editor-qualifier-color: #555;
  --jp-mirror-editor-builtin-color: #008000;
  --jp-mirror-editor-bracket-color: #997;
  --jp-mirror-editor-tag-color: #170;
  --jp-mirror-editor-attribute-color: #00c;
  --jp-mirror-editor-header-color: blue;
  --jp-mirror-editor-quote-color: #090;
  --jp-mirror-editor-link-color: #00c;
  --jp-mirror-editor-error-color: #f00;
  --jp-mirror-editor-hr-color: #999;

  /*
    RTC user specific colors.
    These colors are used for the cursor, username in the editor,
    and the icon of the user.
  */

  --jp-collaborator-color1: #ffad8e;
  --jp-collaborator-color2: #dac83d;
  --jp-collaborator-color3: #72dd76;
  --jp-collaborator-color4: #00e4d0;
  --jp-collaborator-color5: #45d4ff;
  --jp-collaborator-color6: #e2b1ff;
  --jp-collaborator-color7: #ff9de6;

  /* Vega extension styles */

  --jp-vega-background: white;

  /* Sidebar-related styles */

  --jp-sidebar-min-width: 250px;

  /* Search-related styles */

  --jp-search-toggle-off-opacity: 0.5;
  --jp-search-toggle-hover-opacity: 0.8;
  --jp-search-toggle-on-opacity: 1;
  --jp-search-selected-match-background-color: rgb(245, 200, 0);
  --jp-search-selected-match-color: black;
  --jp-search-unselected-match-background-color: var(
    --jp-inverse-layout-color0
  );
  --jp-search-unselected-match-color: var(--jp-ui-inverse-font-color0);

  /* Icon colors that work well with light or dark backgrounds */
  --jp-icon-contrast-color0: var(--md-purple-600);
  --jp-icon-contrast-color1: var(--md-green-600);
  --jp-icon-contrast-color2: var(--md-pink-600);
  --jp-icon-contrast-color3: var(--md-blue-600);

  /* Button colors */
  --jp-accept-color-normal: var(--md-blue-700);
  --jp-accept-color-hover: var(--md-blue-800);
  --jp-accept-color-active: var(--md-blue-900);
  --jp-warn-color-normal: var(--md-red-700);
  --jp-warn-color-hover: var(--md-red-800);
  --jp-warn-color-active: var(--md-red-900);
  --jp-reject-color-normal: var(--md-grey-600);
  --jp-reject-color-hover: var(--md-grey-700);
  --jp-reject-color-active: var(--md-grey-800);

  /* File or activity icons and switch semantic variables */
  --jp-jupyter-icon-color: #f37626;
  --jp-notebook-icon-color: #f37626;
  --jp-json-icon-color: var(--md-orange-700);
  --jp-console-icon-background-color: var(--md-blue-700);
  --jp-console-icon-color: white;
  --jp-terminal-icon-background-color: var(--md-grey-800);
  --jp-terminal-icon-color: var(--md-grey-200);
  --jp-text-editor-icon-color: var(--md-grey-700);
  --jp-inspector-icon-color: var(--md-grey-700);
  --jp-switch-color: var(--md-grey-400);
  --jp-switch-true-position-color: var(--md-orange-900);
}
</style>
<style type="text/css">
/* Force rendering true colors when outputing to pdf */
* {
  -webkit-print-color-adjust: exact;
}

/* Misc */
a.anchor-link {
  display: none;
}

/* Input area styling */
.jp-InputArea {
  overflow: hidden;
}

.jp-InputArea-editor {
  overflow: hidden;
}

.cm-editor.cm-s-jupyter .highlight pre {
/* weird, but --jp-code-padding defined to be 5px but 4px horizontal padding is hardcoded for pre.cm-line */
  padding: var(--jp-code-padding) 4px;
  margin: 0;

  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  color: inherit;

}

.jp-OutputArea-output pre {
  line-height: inherit;
  font-family: inherit;
}

.jp-RenderedText pre {
  color: var(--jp-content-font-color1);
  font-size: var(--jp-code-font-size);
}

/* Hiding the collapser by default */
.jp-Collapser {
  display: none;
}

@page {
    margin: 0.5in; /* Margin for each printed piece of paper */
}

@media print {
  .jp-Cell-inputWrapper,
  .jp-Cell-outputWrapper {
    display: block;
  }
}
</style>
<!-- Load mathjax -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/latest.js?config=TeX-AMS_CHTML-full,Safe"> </script>
<!-- MathJax configuration -->
<script type="text/x-mathjax-config">
    init_mathjax = function() {
        if (window.MathJax) {
        // MathJax loaded
            MathJax.Hub.Config({
                TeX: {
                    equationNumbers: {
                    autoNumber: "AMS",
                    useLabelIds: true
                    }
                },
                tex2jax: {
                    inlineMath: [ ['$','$'], ["\\(","\\)"] ],
                    displayMath: [ ['$$','$$'], ["\\[","\\]"] ],
                    processEscapes: true,
                    processEnvironments: true
                },
                displayAlign: 'center',
                CommonHTML: {
                    linebreaks: {
                    automatic: true
                    }
                }
            });

            MathJax.Hub.Queue(["Typeset", MathJax.Hub]);
        }
    }
    init_mathjax();
    </script>
<!-- End of mathjax configuration --><script type="module">
  document.addEventListener("DOMContentLoaded", async () => {
    const diagrams = document.querySelectorAll(".jp-Mermaid > pre.mermaid");
    // do not load mermaidjs if not needed
    if (!diagrams.length) {
      return;
    }
    const mermaid = (await import("https://cdnjs.cloudflare.com/ajax/libs/mermaid/10.6.0/mermaid.esm.min.mjs")).default;
    const parser = new DOMParser();

    mermaid.initialize({
      maxTextSize: 100000,
      startOnLoad: false,
      fontFamily: window
        .getComputedStyle(document.body)
        .getPropertyValue("--jp-ui-font-family"),
      theme: document.querySelector("body[data-jp-theme-light='true']")
        ? "default"
        : "dark",
    });

    let _nextMermaidId = 0;

    function makeMermaidImage(svg) {
      const img = document.createElement("img");
      const doc = parser.parseFromString(svg, "image/svg+xml");
      const svgEl = doc.querySelector("svg");
      const { maxWidth } = svgEl?.style || {};
      const firstTitle = doc.querySelector("title");
      const firstDesc = doc.querySelector("desc");

      img.setAttribute("src", `data:image/svg+xml,${encodeURIComponent(svg)}`);
      if (maxWidth) {
        img.width = parseInt(maxWidth);
      }
      if (firstTitle) {
        img.setAttribute("alt", firstTitle.textContent);
      }
      if (firstDesc) {
        const caption = document.createElement("figcaption");
        caption.className = "sr-only";
        caption.textContent = firstDesc.textContent;
        return [img, caption];
      }
      return [img];
    }

    async function makeMermaidError(text) {
      let errorMessage = "";
      try {
        await mermaid.parse(text);
      } catch (err) {
        errorMessage = `${err}`;
      }

      const result = document.createElement("details");
      result.className = 'jp-RenderedMermaid-Details';
      const summary = document.createElement("summary");
      summary.className = 'jp-RenderedMermaid-Summary';
      const pre = document.createElement("pre");
      const code = document.createElement("code");
      code.innerText = text;
      pre.appendChild(code);
      summary.appendChild(pre);
      result.appendChild(summary);

      const warning = document.createElement("pre");
      warning.innerText = errorMessage;
      result.appendChild(warning);
      return [result];
    }

    async function renderOneMarmaid(src) {
      const id = `jp-mermaid-${_nextMermaidId++}`;
      const parent = src.parentNode;
      let raw = src.textContent.trim();
      const el = document.createElement("div");
      el.style.visibility = "hidden";
      document.body.appendChild(el);
      let results = null;
      let output = null;
      try {
        const { svg } = await mermaid.render(id, raw, el);
        results = makeMermaidImage(svg);
        output = document.createElement("figure");
        results.map(output.appendChild, output);
      } catch (err) {
        parent.classList.add("jp-mod-warning");
        results = await makeMermaidError(raw);
        output = results[0];
      } finally {
        el.remove();
      }
      parent.classList.add("jp-RenderedMermaid");
      parent.appendChild(output);
    }

    void Promise.all([...diagrams].map(renderOneMarmaid));
  });
</script>
<style>
  .jp-Mermaid:not(.jp-RenderedMermaid) {
    display: none;
  }

  .jp-RenderedMermaid {
    overflow: auto;
    display: flex;
  }

  .jp-RenderedMermaid.jp-mod-warning {
    width: auto;
    padding: 0.5em;
    margin-top: 0.5em;
    border: var(--jp-border-width) solid var(--jp-warn-color2);
    border-radius: var(--jp-border-radius);
    color: var(--jp-ui-font-color1);
    font-size: var(--jp-ui-font-size1);
    white-space: pre-wrap;
    word-wrap: break-word;
  }

  .jp-RenderedMermaid figure {
    margin: 0;
    overflow: auto;
    max-width: 100%;
  }

  .jp-RenderedMermaid img {
    max-width: 100%;
  }

  .jp-RenderedMermaid-Details > pre {
    margin-top: 1em;
  }

  .jp-RenderedMermaid-Summary {
    color: var(--jp-warn-color2);
  }

  .jp-RenderedMermaid:not(.jp-mod-warning) pre {
    display: none;
  }

  .jp-RenderedMermaid-Summary > pre {
    display: inline-block;
    white-space: normal;
  }
</style>
<!-- End of mermaid configuration --></head>
<body class="jp-Notebook" data-jp-theme-light="true" data-jp-theme-name="JupyterLab Light">
<main><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs" id="cell-id=6f4df105-4f3f-4302-90a4-7a99c6ca3a39">
<div class="jp-Cell-inputWrapper" tabindex="0">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [1]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="cm-editor cm-s-jupyter">
<div class="highlight hl-ipython3"><pre><span></span><span class="kn">from</span> <span class="nn">datetime</span> <span class="kn">import</span> <span class="n">datetime</span>
<span class="kn">import</span> <span class="nn">requests</span>
<span class="kn">import</span> <span class="nn">pandas</span> <span class="k">as</span> <span class="nn">pd</span>
<span class="kn">from</span> <span class="nn">bs4</span> <span class="kn">import</span> <span class="n">BeautifulSoup</span><span class="c1">#引入库</span>


<span class="k">def</span> <span class="nf">get_html_content</span><span class="p">(</span><span class="n">url</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">str</span><span class="p">:</span><span class="c1">#请求获取网页</span>
    <span class="n">headers</span> <span class="o">=</span> <span class="p">{</span>
        <span class="s1">'Referer'</span><span class="p">:</span> <span class="s1">'http://cpc.people.com.cn'</span><span class="p">,</span>
        <span class="s1">'Upgrade-Insecure-Requests'</span><span class="p">:</span> <span class="s1">'1'</span><span class="p">,</span>
        <span class="s1">'User-Agent'</span><span class="p">:</span> <span class="s1">'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36'</span>
    <span class="p">}</span>
    <span class="n">response</span> <span class="o">=</span> <span class="n">requests</span><span class="o">.</span><span class="n">request</span><span class="p">(</span><span class="s2">"GET"</span><span class="p">,</span> <span class="n">url</span><span class="p">,</span> <span class="n">headers</span><span class="o">=</span><span class="n">headers</span><span class="p">)</span>
    <span class="n">response</span><span class="o">.</span><span class="n">encoding</span> <span class="o">=</span> <span class="s2">"gbk"</span>
    <span class="k">return</span> <span class="n">response</span><span class="o">.</span><span class="n">text</span>
</pre></div>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs" id="cell-id=e824f979-72c2-4855-b017-b6e24d9c38ef">
<div class="jp-Cell-inputWrapper" tabindex="0">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [3]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="cm-editor cm-s-jupyter">
<div class="highlight hl-ipython3"><pre><span></span><span class="k">def</span> <span class="nf">get_article_detail</span><span class="p">(</span><span class="n">url</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">dict</span><span class="p">:</span><span class="c1">#获取解析文章作者</span>
    <span class="n">html_content</span> <span class="o">=</span> <span class="n">get_html_content</span><span class="p">(</span><span class="n">url</span><span class="p">)</span>
    <span class="n">soup</span> <span class="o">=</span> <span class="n">BeautifulSoup</span><span class="p">(</span><span class="n">html_content</span><span class="p">,</span> <span class="s1">'html.parser'</span><span class="p">)</span>
    <span class="n">edit</span> <span class="o">=</span> <span class="n">soup</span><span class="o">.</span><span class="n">find</span><span class="p">(</span><span class="s2">"div"</span><span class="p">,</span> <span class="s2">"edit"</span><span class="p">)</span><span class="o">.</span><span class="n">text</span>
    <span class="k">try</span><span class="p">:</span>
        <span class="n">edit</span> <span class="o">=</span> <span class="n">edit</span><span class="o">.</span><span class="n">strip</span><span class="p">(</span><span class="s2">"("</span><span class="p">)</span><span class="o">.</span><span class="n">strip</span><span class="p">(</span><span class="s2">")"</span><span class="p">)</span><span class="o">.</span><span class="n">strip</span><span class="p">(</span><span class="s2">"责编："</span><span class="p">)</span>
    <span class="k">except</span><span class="p">:</span>
        <span class="n">edit</span> <span class="o">=</span> <span class="s2">""</span>
    <span class="k">try</span><span class="p">:</span>
        <span class="n">source</span> <span class="o">=</span> <span class="n">soup</span><span class="o">.</span><span class="n">find</span><span class="p">(</span><span class="s2">"p"</span><span class="p">,</span> <span class="s2">"sou"</span><span class="p">)</span><span class="o">.</span><span class="n">find</span><span class="p">(</span><span class="s2">"a"</span><span class="p">)</span><span class="o">.</span><span class="n">text</span>
    <span class="k">except</span><span class="p">:</span>
        <span class="n">source</span> <span class="o">=</span> <span class="s2">""</span>
    <span class="k">return</span> <span class="p">{</span>
        <span class="s2">"edit"</span><span class="p">:</span> <span class="n">edit</span><span class="p">,</span>
        <span class="s2">"source"</span><span class="p">:</span> <span class="n">source</span>
    <span class="p">}</span>
</pre></div>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs" id="cell-id=ff1ea645-5489-4cf4-a583-80a1404b2a32">
<div class="jp-Cell-inputWrapper" tabindex="0">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [2]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="cm-editor cm-s-jupyter">
<div class="highlight hl-ipython3"><pre><span></span><span class="k">def</span> <span class="nf">write_to_excel</span><span class="p">(</span><span class="n">filename</span><span class="p">:</span> <span class="nb">str</span><span class="p">,</span> <span class="n">excel_datas</span><span class="p">:</span> <span class="nb">dict</span><span class="p">):</span><span class="c1">#将数据写入excel文件</span>
    <span class="n">df</span> <span class="o">=</span> <span class="n">pd</span><span class="o">.</span><span class="n">DataFrame</span><span class="p">(</span><span class="n">excel_datas</span><span class="p">)</span>
    <span class="n">df</span><span class="o">.</span><span class="n">to_excel</span><span class="p">(</span><span class="n">filename</span><span class="p">,</span> <span class="n">index</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
</pre></div>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell" id="cell-id=ef951669-f4e2-49e9-84d0-32ea20e346d2">
<div class="jp-Cell-inputWrapper" tabindex="0">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [4]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="cm-editor cm-s-jupyter">
<div class="highlight hl-ipython3"><pre><span></span><span class="k">def</span> <span class="nf">get_articles</span><span class="p">(</span><span class="n">urlpath</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">dict</span><span class="p">:</span><span class="c1">#获取文章网址标题编辑等</span>
    <span class="n">title_list</span> <span class="o">=</span> <span class="p">[]</span>
    <span class="n">article_url_list</span> <span class="o">=</span> <span class="p">[]</span>
    <span class="n">date_list</span> <span class="o">=</span> <span class="p">[]</span>
    <span class="n">source_list</span> <span class="o">=</span> <span class="p">[]</span>
    <span class="n">editor_list</span> <span class="o">=</span> <span class="p">[]</span>
    <span class="k">with</span> <span class="nb">open</span><span class="p">(</span><span class="n">urlpath</span><span class="p">,</span> <span class="n">encoding</span><span class="o">=</span><span class="s2">"utf-8"</span><span class="p">)</span> <span class="k">as</span> <span class="n">f</span><span class="p">:</span><span class="c1">#将网址写入txt文件</span>
        <span class="n">lines</span> <span class="o">=</span> <span class="n">f</span><span class="o">.</span><span class="n">readlines</span><span class="p">()</span>
    <span class="k">for</span> <span class="n">line</span> <span class="ow">in</span> <span class="n">lines</span><span class="p">:</span><span class="c1">#循环遍历每个网址</span>
        <span class="n">url</span> <span class="o">=</span> <span class="n">line</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s2">"</span><span class="se">\n</span><span class="s2">"</span><span class="p">,</span> <span class="s2">""</span><span class="p">)</span>
        <span class="n">html</span> <span class="o">=</span> <span class="n">get_html_content</span><span class="p">(</span><span class="n">url</span><span class="p">)</span>
        <span class="n">soup</span> <span class="o">=</span> <span class="n">BeautifulSoup</span><span class="p">(</span><span class="n">html</span><span class="p">,</span> <span class="s1">'html.parser'</span><span class="p">)</span>
        <span class="n">div</span> <span class="o">=</span> <span class="n">soup</span><span class="o">.</span><span class="n">find</span><span class="p">(</span><span class="s2">"div"</span><span class="p">,</span> <span class="s2">"p2j_con02"</span><span class="p">)</span>
        <span class="k">if</span> <span class="n">div</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
            <span class="k">break</span>
        <span class="n">article_tag_list</span> <span class="o">=</span> <span class="n">div</span><span class="o">.</span><span class="n">find_all</span><span class="p">(</span><span class="s2">"li"</span><span class="p">)</span>
        <span class="k">for</span> <span class="n">article_tag</span> <span class="ow">in</span> <span class="n">article_tag_list</span><span class="p">:</span>
            <span class="n">title</span> <span class="o">=</span> <span class="n">article_tag</span><span class="o">.</span><span class="n">find</span><span class="p">(</span><span class="s2">"a"</span><span class="p">)</span><span class="o">.</span><span class="n">text</span>
            <span class="n">title_list</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">title</span><span class="p">)</span>
            <span class="n">article_url</span> <span class="o">=</span> <span class="s2">"http://cpc.people.com.cn"</span> <span class="o">+</span> <span class="n">article_tag</span><span class="o">.</span><span class="n">find</span><span class="p">(</span><span class="s2">"a"</span><span class="p">)[</span><span class="s2">"href"</span><span class="p">]</span>
            <span class="n">article_url_list</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">article_url</span><span class="p">)</span>
            <span class="n">date_str</span> <span class="o">=</span> <span class="n">article_tag</span><span class="o">.</span><span class="n">find</span><span class="p">(</span><span class="s2">"i"</span><span class="p">)</span><span class="o">.</span><span class="n">text</span>
            <span class="n">date</span> <span class="o">=</span> <span class="n">date_str</span><span class="o">.</span><span class="n">strip</span><span class="p">(</span><span class="s2">"]"</span><span class="p">)</span><span class="o">.</span><span class="n">strip</span><span class="p">(</span><span class="s2">"["</span><span class="p">)</span>
            <span class="n">date_list</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">date</span><span class="p">)</span>
            <span class="n">detail</span> <span class="o">=</span> <span class="n">get_article_detail</span><span class="p">(</span><span class="n">article_url</span><span class="p">)</span>
            <span class="n">editor</span> <span class="o">=</span> <span class="n">detail</span><span class="p">[</span><span class="s2">"edit"</span><span class="p">]</span>
            <span class="n">source</span> <span class="o">=</span> <span class="n">detail</span><span class="p">[</span><span class="s2">"source"</span><span class="p">]</span>
            <span class="n">editor_list</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">editor</span><span class="p">)</span>
            <span class="n">source_list</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">source</span><span class="p">)</span>
            <span class="nb">print</span><span class="p">(</span><span class="n">title</span><span class="p">,</span> <span class="n">article_url</span><span class="p">,</span> <span class="n">date</span><span class="p">,</span> <span class="n">editor</span><span class="p">,</span> <span class="n">source</span><span class="p">)</span>

    <span class="n">excel_datas</span> <span class="o">=</span> <span class="p">{</span>
        <span class="s2">"title"</span><span class="p">:</span> <span class="n">title_list</span><span class="p">,</span>
        <span class="s2">"article_url"</span><span class="p">:</span> <span class="n">article_url_list</span><span class="p">,</span>
        <span class="s2">"date"</span><span class="p">:</span> <span class="n">date_list</span><span class="p">,</span>
        <span class="s2">"edit"</span><span class="p">:</span> <span class="n">editor_list</span><span class="p">,</span>
        <span class="s2">"source"</span><span class="p">:</span> <span class="n">source_list</span>
    <span class="p">}</span><span class="c1">#整理为一个字典</span>
    <span class="k">return</span> <span class="n">excel_datas</span>


<span class="k">if</span> <span class="vm">__name__</span> <span class="o">==</span> <span class="s1">'__main__'</span><span class="p">:</span>
    <span class="n">url_path</span> <span class="o">=</span> <span class="s2">"./url.txt"</span>
    <span class="n">articles</span> <span class="o">=</span> <span class="n">get_articles</span><span class="p">(</span><span class="n">url_path</span><span class="p">)</span>
    <span class="n">filename</span> <span class="o">=</span> <span class="n">datetime</span><span class="o">.</span><span class="n">now</span><span class="p">()</span><span class="o">.</span><span class="n">strftime</span><span class="p">(</span><span class="s2">"%Y%m</span><span class="si">%d</span><span class="s2">%H%M%S-人民网综合报道.xlsx"</span><span class="p">)</span>
    <span class="n">write_to_excel</span><span class="p">(</span><span class="n">filename</span><span class="p">,</span> <span class="n">articles</span><span class="p">)</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain" tabindex="0">
<pre>2024年全国少数民族优秀声乐作品展演在广西桂林举行 http://cpc.people.com.cn/n1/2024/0412/c64387-40214822.html 2024年04月12日 彭静、邓志慧 人民网
强化社区为民、便民、安民功能（体验·民生一线观察） http://cpc.people.com.cn/n1/2024/0412/c64387-40214780.html 2024年04月12日 彭晓玲、唐宋 人民网－人民日报
提升乡村治理效能（推进乡村全面振兴不断取得新成效） http://cpc.people.com.cn/n1/2024/0412/c64387-40214779.html 2024年04月12日 彭晓玲、唐宋 人民网－人民日报
中国与东盟加强职业教育合作 http://cpc.people.com.cn/n1/2024/0412/c64387-40214778.html 2024年04月12日 彭晓玲、唐宋 人民网－人民日报
中国冲浪项目首获奥运参赛资格 http://cpc.people.com.cn/n1/2024/0412/c64387-40214777.html 2024年04月12日 彭晓玲、唐宋 人民网－人民日报
让矛盾纠纷在检察环节高质量化解（基层治理新实践） http://cpc.people.com.cn/n1/2024/0412/c64387-40214771.html 2024年04月12日 彭晓玲、唐宋 人民网－人民日报
把惠民实事办到群众心坎上（一线行走） http://cpc.people.com.cn/n1/2024/0412/c64387-40214772.html 2024年04月12日 彭晓玲、唐宋 人民网－人民日报
粤闽桂琼共建红树林司法保护新机制 http://cpc.people.com.cn/n1/2024/0412/c64387-40214773.html 2024年04月12日 彭晓玲、唐宋 人民网－人民日报
将理论宣讲搬到革命教育基地 http://cpc.people.com.cn/n1/2024/0412/c64387-40214774.html 2024年04月12日 彭晓玲、唐宋 人民网－人民日报
全国“巾帼普法乡村行”首场示范活动举行 http://cpc.people.com.cn/n1/2024/0412/c64387-40214775.html 2024年04月12日 彭晓玲、唐宋 人民网－人民日报
农村流动党员在城区就能参加党组织活动 http://cpc.people.com.cn/n1/2024/0412/c64387-40214776.html 2024年04月12日 彭晓玲、唐宋 人民网－人民日报
坚定不移推进长江十年禁渔  奋力谱写长江大保护新篇章 http://cpc.people.com.cn/n1/2024/0412/c64387-40214767.html 2024年04月12日 彭晓玲、唐宋 人民网－人民日报
三月全国居民消费价格指数环比季节性下降 http://cpc.people.com.cn/n1/2024/0412/c64387-40214768.html 2024年04月12日 彭晓玲、唐宋 人民网－人民日报
金融监管总局强化反保险欺诈工作 http://cpc.people.com.cn/n1/2024/0412/c64387-40214769.html 2024年04月12日 彭晓玲、唐宋 人民网－人民日报
四地试点增值电信业务扩大开放 http://cpc.people.com.cn/n1/2024/0412/c64387-40214770.html 2024年04月12日 彭晓玲、唐宋 人民网－人民日报
上海勇担使命加快建设“五个中心”（新时代画卷） http://cpc.people.com.cn/n1/2024/0412/c64387-40214764.html 2024年04月12日 彭晓玲、唐宋 人民网－人民日报
太空种子结硕果（大数据观察） http://cpc.people.com.cn/n1/2024/0412/c64387-40214761.html 2024年04月12日 彭晓玲、唐宋 人民网－人民日报
医保各项工作稳步推进 http://cpc.people.com.cn/n1/2024/0412/c64387-40214762.html 2024年04月12日 彭晓玲、唐宋 人民网－人民日报
义务教育阳光招生专项行动开展 http://cpc.people.com.cn/n1/2024/0412/c64387-40214763.html 2024年04月12日 彭晓玲、唐宋 人民网－人民日报
探索自然奥秘  勇攀科学高峰（讲述·弘扬科学家精神（特别策划）） http://cpc.people.com.cn/n1/2024/0412/c64387-40214759.html 2024年04月12日 彭晓玲、唐宋 人民网－人民日报
共享开放机遇 共创美好生活 http://cpc.people.com.cn/n1/2024/0412/c64387-40214760.html 2024年04月12日 彭晓玲、唐宋 人民网－人民日报
用行动说话、靠实干成事（评论员观察） http://cpc.people.com.cn/n1/2024/0412/c64387-40214756.html 2024年04月12日 彭晓玲、唐宋 人民网－人民日报
新电商助力消费扩容升级（人民时评） http://cpc.people.com.cn/n1/2024/0412/c64387-40214758.html 2024年04月12日 彭晓玲、唐宋 人民网－人民日报
下架“婆媳大战”毒鸡汤令人拍手称快 http://cpc.people.com.cn/n1/2024/0412/c64387-40214738.html 2024年04月12日 宋美琪、王珂园 中国妇女报
“为外企高质量发展提供沃土”（见证·中国机遇） http://cpc.people.com.cn/n1/2024/0412/c64387-40214547.html 2024年04月12日 唐宋、任一林 人民网－人民日报
人文交流助力扣好中美关系“第一粒纽扣”（钟声） http://cpc.people.com.cn/n1/2024/0412/c64387-40214548.html 2024年04月12日 唐宋、任一林 人民网－人民日报
中共代表团访问赞比亚 http://cpc.people.com.cn/n1/2024/0412/c64387-40214549.html 2024年04月12日 唐宋、任一林 人民网－人民日报
非洲国家“绿色长城”建设专题研修班在京举办 http://cpc.people.com.cn/n1/2024/0412/c64387-40214550.html 2024年04月12日 唐宋、任一林 人民网－人民日报
中国海军第四十五批护航编队抵达马达加斯加进行友好访问 http://cpc.people.com.cn/n1/2024/0412/c64387-40214551.html 2024年04月12日 唐宋、任一林 人民网－人民日报
打造展示中国风范的靓丽名片（推动高质量发展·权威发布） http://cpc.people.com.cn/n1/2024/0412/c64387-40214538.html 2024年04月12日 唐宋、任一林 人民网－人民日报
促进投资消费  挖掘内需潜力（权威发布） http://cpc.people.com.cn/n1/2024/0412/c64387-40214539.html 2024年04月12日 唐宋、任一林 人民网－人民日报
国务院任免国家工作人员 http://cpc.people.com.cn/n1/2024/0412/c64387-40214540.html 2024年04月12日 唐宋、任一林 人民网－人民日报
确立生态保护补偿基本制度规则 http://cpc.people.com.cn/n1/2024/0412/c64387-40214541.html 2024年04月12日 唐宋、任一林 人民网－人民日报
家电行业产需活跃度回升 http://cpc.people.com.cn/n1/2024/0412/c64387-40214542.html 2024年04月12日 唐宋、任一林 人民网－人民日报
新能源成南方五省份第一大电源 http://cpc.people.com.cn/n1/2024/0412/c64387-40214543.html 2024年04月12日 唐宋、任一林 人民网－人民日报
着力开展森林城市建设 http://cpc.people.com.cn/n1/2024/0412/c64387-40214527.html 2024年04月12日 唐宋、任一林 人民网－人民日报
为两岸关系指明正确方向 http://cpc.people.com.cn/n1/2024/0412/c64387-40214528.html 2024年04月12日 唐宋、任一林 人民网－人民日报
如何改革完善耕地占补平衡制度（政策问答·推进乡村全面振兴） http://cpc.people.com.cn/n1/2024/0412/c64387-40214529.html 2024年04月12日 唐宋、任一林 人民网－人民日报
飞行超20万公里 跑来近百家订单 http://cpc.people.com.cn/n1/2024/0412/c64387-40214530.html 2024年04月12日 唐宋、任一林 人民网－人民日报
一季度汽车销量同比增长10.6%（新数据 新看点） http://cpc.people.com.cn/n1/2024/0412/c64387-40214531.html 2024年04月12日 唐宋、任一林 人民网－人民日报
让以旧换新更加方便省心（今日谈） http://cpc.people.com.cn/n1/2024/0412/c64387-40214532.html 2024年04月12日 唐宋、任一林 人民网－人民日报
让“护企优商”有力度有温度（法治头条） http://cpc.people.com.cn/n1/2024/0411/c64387-40213794.html 2024年04月11日 彭晓玲、任一林 人民网－人民日报
努力实现“有件必备、有备必审、有错必纠”（坚持和完善人民代表大会制度） http://cpc.people.com.cn/n1/2024/0411/c64387-40213793.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
磨砺队伍有收获  备赛奥运添信心（竞技观察） http://cpc.people.com.cn/n1/2024/0411/c64387-40213788.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
我国已划定生态环境管控单元44604个 http://cpc.people.com.cn/n1/2024/0411/c64387-40213786.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
动态监测投放数量  定点规划停放位置 http://cpc.people.com.cn/n1/2024/0411/c64387-40213781.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
第三届全民阅读大会将在昆明举办 http://cpc.people.com.cn/n1/2024/0411/c64387-40213778.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
第八届全国话剧优秀剧目展演将举行 http://cpc.people.com.cn/n1/2024/0411/c64387-40213779.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
第三届雄安·雄州文化艺术节开幕 http://cpc.people.com.cn/n1/2024/0411/c64387-40213780.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
建强党组织  同走致富路（干部状态新观察） http://cpc.people.com.cn/n1/2024/0411/c64387-40213772.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
网络侵权案言论类侵权占比较高 http://cpc.people.com.cn/n1/2024/0411/c64387-40213773.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
上海推进“检察护企” http://cpc.people.com.cn/n1/2024/0411/c64387-40213774.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
“京雄同城化”服务加速推进 http://cpc.people.com.cn/n1/2024/0411/c64387-40213775.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
全链条追溯  交出明白账 http://cpc.people.com.cn/n1/2024/0411/c64387-40213776.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
“雪龙”返航  满载而归 http://cpc.people.com.cn/n1/2024/0411/c64387-40213770.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
超39亿元免税品“即购即提”（经济聚焦） http://cpc.people.com.cn/n1/2024/0411/c64387-40213769.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
围绕“五个自觉”高质量开展中青年干部教育培训（深入学习贯彻习近平新时代中国特色社会主义思想） http://cpc.people.com.cn/n1/2024/0411/c64387-40213766.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
进一步强化金融支持绿色低碳发展 http://cpc.people.com.cn/n1/2024/0411/c64387-40213761.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
4月底前实现资源回收企业“反向开票” http://cpc.people.com.cn/n1/2024/0411/c64387-40213762.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
3840亩农田拉满“科技范”（探访） http://cpc.people.com.cn/n1/2024/0411/c64387-40213759.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
增强软实力  提升吸引力 http://cpc.people.com.cn/n1/2024/0411/c64387-40213760.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
为大型建筑撑起钢铁架构（讲述·弘扬科学家精神） http://cpc.people.com.cn/n1/2024/0411/c64387-40213756.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
“国家安全  青春挺膺”主题团日活动周启动 http://cpc.people.com.cn/n1/2024/0411/c64387-40213757.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
教育部组织开展2024年全民国家安全教育日活动 http://cpc.people.com.cn/n1/2024/0411/c64387-40213758.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
民间投资好转提振市场预期（评论员观察） http://cpc.people.com.cn/n1/2024/0411/c64387-40213751.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
生态成产业，青山变金山（现场评论） http://cpc.people.com.cn/n1/2024/0411/c64387-40213752.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
育更优中国种  产更多中国粮（中国道路中国梦·与时代一起奔跑） http://cpc.people.com.cn/n1/2024/0411/c64387-40213753.html 2024年04月11日 彭晓玲、唐宋 人民网－人民日报
构建以信用信息为基础的普惠金融服务体系（权威发布） http://cpc.people.com.cn/n1/2024/0411/c64387-40213662.html 2024年04月11日 唐宋、任一林 人民网－人民日报
实践是提高本领的途径（人民论坛） http://cpc.people.com.cn/n1/2024/0411/c64387-40213663.html 2024年04月11日 唐宋、任一林 人民网－人民日报
贴心服务  触屏可及（点赞新时代） http://cpc.people.com.cn/n1/2024/0411/c64387-40213664.html 2024年04月11日 唐宋、任一林 人民网－人民日报
京津冀三地将建立定期沟通协调联动机制 http://cpc.people.com.cn/n1/2024/0411/c64387-40213665.html 2024年04月11日 唐宋、任一林 人民网－人民日报
川渝发布72项政务服务合作举措 http://cpc.people.com.cn/n1/2024/0411/c64387-40213666.html 2024年04月11日 唐宋、任一林 人民网－人民日报
大力加强社区工作者队伍建设  不断壮大城市基层治理骨干力量 http://cpc.people.com.cn/n1/2024/0411/c64387-40213658.html 2024年04月11日 唐宋、任一林 人民网－人民日报
坚定走好绿色低碳高质量发展之路（推动高质量发展·权威发布） http://cpc.people.com.cn/n1/2024/0411/c64387-40213659.html 2024年04月11日 唐宋、任一林 人民网－人民日报
下穿机场高铁隧道开始掘进 http://cpc.people.com.cn/n1/2024/0411/c64387-40213660.html 2024年04月11日 唐宋、任一林 人民网－人民日报
促进设备更新和消费品以旧换新 http://cpc.people.com.cn/n1/2024/0411/c64387-40213661.html 2024年04月11日 唐宋、任一林 人民网－人民日报
全球文明倡议有助于构建多元包容的世界（国际论坛） http://cpc.people.com.cn/n1/2024/0411/c64387-40213650.html 2024年04月11日 唐宋、任一林 人民网－人民日报
密克罗尼西亚联邦总统西米纳向人民英雄纪念碑敬献花圈 http://cpc.people.com.cn/n1/2024/0411/c64387-40213651.html 2024年04月11日 唐宋、任一林 人民网－人民日报
纪念马可·波罗逝世700周年创意展在威尼斯开幕 http://cpc.people.com.cn/n1/2024/0411/c64387-40213652.html 2024年04月11日 唐宋、任一林 人民网－人民日报
巴巴多斯表示坚定支持一个中国原则 http://cpc.people.com.cn/n1/2024/0411/c64387-40213653.html 2024年04月11日 唐宋、任一林 人民网－人民日报
第七届进博会暨虹桥论坛推介座谈会在纳米比亚举行 http://cpc.people.com.cn/n1/2024/0411/c64387-40213654.html 2024年04月11日 唐宋、任一林 人民网－人民日报
中国与格鲁吉亚签署互免签证协定 http://cpc.people.com.cn/n1/2024/0411/c64387-40213655.html 2024年04月11日 唐宋、任一林 人民网－人民日报
外交部：投资中国就是投资未来 http://cpc.people.com.cn/n1/2024/0411/c64387-40213656.html 2024年04月11日 唐宋、任一林 人民网－人民日报
苏里南共和国总统单多吉今起对我国进行国事访问 http://cpc.people.com.cn/n1/2024/0411/c64387-40213649.html 2024年04月11日 唐宋、任一林 人民网－人民日报
我国5G移动电话用户规模达8.51亿户 http://cpc.people.com.cn/n1/2024/0411/c64387-40213634.html 2024年04月11日 唐宋、任一林 人民网－人民日报
中共中央办公厅国务院办公厅关于加强社区工作者队伍建设的意见 http://cpc.people.com.cn/n1/2024/0411/c64387-40213635.html 2024年04月11日 唐宋、任一林 人民网－人民日报
生态保护补偿条例 http://cpc.people.com.cn/n1/2024/0410/c64387-40213316.html 2024年04月10日 陈羽、邓志慧 新华网
中共中央办公厅 国务院办公厅关于加强社区工作者队伍建设的意见 http://cpc.people.com.cn/n1/2024/0410/c64387-40213317.html 2024年04月10日 陈羽、邓志慧 新华网
“时刻准备着·《一百岁的红领巾》”座谈会在京召开 http://cpc.people.com.cn/n1/2024/0410/c64387-40213069.html 2024年04月10日 王先进、秦华 人民网-中国共产党新闻网
共青团中央开展卫国戍边青春故事宣讲活动 http://cpc.people.com.cn/n1/2024/0410/c64387-40213070.html 2024年04月10日 王先进、秦华 人民网-中国共产党新闻网
国际商事仲裁中心建设试点工作推进会举行 http://cpc.people.com.cn/n1/2024/0410/c64387-40212935.html 2024年04月10日 彭静、任一林 人民网－人民日报
延伸审判职能  助力社会治理（基层治理新实践） http://cpc.people.com.cn/n1/2024/0410/c64387-40212932.html 2024年04月10日 彭静、任一林 人民网－人民日报
边民互市贸易进出口商品不予免税清单印发 http://cpc.people.com.cn/n1/2024/0410/c64387-40212928.html 2024年04月10日 彭静、任一林 人民网－人民日报
113个番茄品种背后的科技含量（经济聚焦·农业全产业链标准化） http://cpc.people.com.cn/n1/2024/0410/c64387-40212924.html 2024年04月10日 彭静、任一林 人民网－人民日报
四部门优化重点文旅场所支付服务 http://cpc.people.com.cn/n1/2024/0410/c64387-40212925.html 2024年04月10日 彭静、任一林 人民网－人民日报
让灵活就业者好就业、就好业（倾听·关注零工市场） http://cpc.people.com.cn/n1/2024/0410/c64387-40212917.html 2024年04月10日 彭静、任一林 人民网－人民日报
扮靓乡村小院  创造幸福生活 http://cpc.people.com.cn/n1/2024/0410/c64387-40212914.html 2024年04月10日 彭静、任一林 人民网－人民日报
共青团中央开展卫国戍边青春故事宣讲活动 http://cpc.people.com.cn/n1/2024/0410/c64387-40212915.html 2024年04月10日 彭静、任一林 人民网－人民日报
七部门发文推动工业领域设备更新 http://cpc.people.com.cn/n1/2024/0410/c64387-40212916.html 2024年04月10日 彭静、任一林 人民网－人民日报
不断扩大高水平对外开放（评论员观察） http://cpc.people.com.cn/n1/2024/0410/c64387-40212904.html 2024年04月10日 彭静、任一林 人民网－人民日报
近邻变队友，势能化动能（现场评论） http://cpc.people.com.cn/n1/2024/0410/c64387-40212905.html 2024年04月10日 彭静、任一林 人民网－人民日报
让服章之美绽新彩（人民时评） http://cpc.people.com.cn/n1/2024/0410/c64387-40212906.html 2024年04月10日 彭静、任一林 人民网－人民日报
提升医保智能化服务水平（纵横） http://cpc.people.com.cn/n1/2024/0410/c64387-40212907.html 2024年04月10日 彭静、任一林 人民网－人民日报
以旧换新，还需多些发力点（大家谈） http://cpc.people.com.cn/n1/2024/0410/c64387-40212908.html 2024年04月10日 彭静、任一林 人民网－人民日报
以科技之“智”  筑安全之基（深阅读） http://cpc.people.com.cn/n1/2024/0410/c64387-40212806.html 2024年04月10日 彭静、任一林 人民网－人民日报
我国最深地热科探井完钻 http://cpc.people.com.cn/n1/2024/0410/c64387-40212807.html 2024年04月10日 彭静、任一林 人民网－人民日报
“更要做种树者”（人民论坛） http://cpc.people.com.cn/n1/2024/0410/c64387-40212808.html 2024年04月10日 彭静、任一林 人民网－人民日报
切实维护农民群众合法权益  保障粮食生产安全 http://cpc.people.com.cn/n1/2024/0410/c64387-40212809.html 2024年04月10日 彭静、任一林 人民网－人民日报
因地制宜为农户提供生产技术指导 http://cpc.people.com.cn/n1/2024/0410/c64387-40212810.html 2024年04月10日 彭静、任一林 人民网－人民日报
这里的黑土地越来越肥沃（在现场） http://cpc.people.com.cn/n1/2024/0410/c64387-40212811.html 2024年04月10日 彭静、任一林 人民网－人民日报
鼓舞发展中国家探索适合自身的发展道路（国际论坛·读懂中国·读懂中国式现代化） http://cpc.people.com.cn/n1/2024/0410/c64387-40212791.html 2024年04月10日 彭静、任一林 人民网－人民日报
“巴西与中国友好合作的见证” http://cpc.people.com.cn/n1/2024/0410/c64387-40212792.html 2024年04月10日 彭静、任一林 人民网－人民日报
中企投建的老挝水电站安全运行5000天 累计发电量超过67亿千瓦时 http://cpc.people.com.cn/n1/2024/0410/c64387-40212793.html 2024年04月10日 彭静、任一林 人民网－人民日报
朝鲜制定“朝中友好年”徽标 http://cpc.people.com.cn/n1/2024/0410/c64387-40212794.html 2024年04月10日 彭静、任一林 人民网－人民日报
中越人民友好见面会在京举行 http://cpc.people.com.cn/n1/2024/0410/c64387-40212795.html 2024年04月10日 彭静、任一林 人民网－人民日报
中国共产党和巴西劳工党第七届理论研讨会举行 http://cpc.people.com.cn/n1/2024/0410/c64387-40212796.html 2024年04月10日 彭静、任一林 人民网－人民日报
共谋发展繁荣  造福两国人民（大使随笔·推动构建人类命运共同体） http://cpc.people.com.cn/n1/2024/0410/c64387-40212797.html 2024年04月10日 彭静、任一林 人民网－人民日报
博洛尼亚童书展开幕  中国童书加速“出海” http://cpc.people.com.cn/n1/2024/0410/c64387-40212798.html 2024年04月10日 彭静、任一林 人民网－人民日报
外交部：中国将继续为世界经济增长提供强劲动力 http://cpc.people.com.cn/n1/2024/0410/c64387-40212799.html 2024年04月10日 彭静、任一林 人民网－人民日报
中国第二十七批赴刚果（金）维和部队全体官兵荣获联合国“和平勋章” http://cpc.people.com.cn/n1/2024/0410/c64387-40212800.html 2024年04月10日 彭静、任一林 人民网－人民日报
中共代表团访问卢旺达 http://cpc.people.com.cn/n1/2024/0410/c64387-40212801.html 2024年04月10日 彭静、任一林 人民网－人民日报
全面加大消费者权益保护力度（权威发布） http://cpc.people.com.cn/n1/2024/0410/c64387-40212781.html 2024年04月10日 彭静、任一林 人民网－人民日报
春耕一线看良种、良机与良法（经济新方位） http://cpc.people.com.cn/n1/2024/0410/c64387-40212782.html 2024年04月10日 彭静、任一林 人民网－人民日报
好技术种出好粮食（专家观点） http://cpc.people.com.cn/n1/2024/0410/c64387-40212783.html 2024年04月10日 彭静、任一林 人民网－人民日报
算算一亩田的节水账（春耕进行时） http://cpc.people.com.cn/n1/2024/0410/c64387-40212784.html 2024年04月10日 彭静、任一林 人民网－人民日报
群众文艺展现宽广发展空间（坚持“两创”·关注新时代文艺） http://cpc.people.com.cn/n1/2024/0409/c64387-40212183.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
增强干部“会担当”“重担当”“敢担当”的能力本领（深度关注·提振党员干部干事创业精气神③） http://cpc.people.com.cn/n1/2024/0409/c64387-40212181.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
以严明纪律规范党员干部履职用权（金台潮声） http://cpc.people.com.cn/n1/2024/0409/c64387-40212182.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
“为我们打开了更多了解中国的窗口”（国际视点） http://cpc.people.com.cn/n1/2024/0409/c64387-40212177.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
丰富运动场景  服务全民健身 http://cpc.people.com.cn/n1/2024/0409/c64387-40212173.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
梨花深处  春色满园（古树的故事） http://cpc.people.com.cn/n1/2024/0409/c64387-40212165.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
财政部下达水利救灾资金1.74亿元 http://cpc.people.com.cn/n1/2024/0409/c64387-40212166.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
长三角示范区发布四项生态环境领域制度创新成果 http://cpc.people.com.cn/n1/2024/0409/c64387-40212167.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
广西一季度植树造林219万亩 http://cpc.people.com.cn/n1/2024/0409/c64387-40212168.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
云南完成首批自然资源确权登簿工作 http://cpc.people.com.cn/n1/2024/0409/c64387-40212169.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
宁夏水土流失面积和强度实现双下降 http://cpc.people.com.cn/n1/2024/0409/c64387-40212170.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
老街坊乐享新生活（让老百姓过上更好的日子） http://cpc.people.com.cn/n1/2024/0409/c64387-40212159.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
推进建筑和市政基础设施设备更新 http://cpc.people.com.cn/n1/2024/0409/c64387-40212160.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
市场监管部门整治群众身边突出问题 http://cpc.people.com.cn/n1/2024/0409/c64387-40212161.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
让老年人吃得更放心 http://cpc.people.com.cn/n1/2024/0409/c64387-40212162.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
一堂走着上的思政课（解码·思政课怎么上） http://cpc.people.com.cn/n1/2024/0409/c64387-40212151.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
北京跃升为全球科技创新关键枢纽 http://cpc.people.com.cn/n1/2024/0409/c64387-40212152.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
“雪龙2”号访问香港 http://cpc.people.com.cn/n1/2024/0409/c64387-40212153.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
不断增强自主创新能力 http://cpc.people.com.cn/n1/2024/0409/c64387-40212154.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
民族歌剧《山海情》在天津上演 http://cpc.people.com.cn/n1/2024/0409/c64387-40212155.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
提升行政效能  最大限度利企便民（高效办成一件事） http://cpc.people.com.cn/n1/2024/0409/c64387-40212147.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
统一法律适用，维护婚姻家庭和谐稳定 http://cpc.people.com.cn/n1/2024/0409/c64387-40212148.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
国家移民管理机构12367服务平台开通3年 http://cpc.people.com.cn/n1/2024/0409/c64387-40212149.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
马克思主义生产力理论的创新和发展（学术圆桌） http://cpc.people.com.cn/n1/2024/0409/c64387-40212143.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
标准化种植  品牌化发展（经济聚焦·农业全产业链标准化） http://cpc.people.com.cn/n1/2024/0409/c64387-40212137.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
让农业全产业链实力更强劲（经济时评） http://cpc.people.com.cn/n1/2024/0409/c64387-40212138.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
中越班列发送货物增82% http://cpc.people.com.cn/n1/2024/0409/c64387-40212139.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
集聚要素资源  加快绿色转型 http://cpc.people.com.cn/n1/2024/0409/c64387-40212140.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
播种育秧也能3D印刷 http://cpc.people.com.cn/n1/2024/0409/c64387-40212141.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
规范零工市场  优化就业服务（倾听·关注零工市场） http://cpc.people.com.cn/n1/2024/0409/c64387-40212133.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
连线小农户  服务全天候 http://cpc.people.com.cn/n1/2024/0409/c64387-40212134.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
都市圈国土空间规划编制规程正式实施 http://cpc.people.com.cn/n1/2024/0409/c64387-40212135.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
7551米，一个团队的奋力掘进（工匠绝活） http://cpc.people.com.cn/n1/2024/0409/c64387-40212130.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
全国人大常委会部分组成人员参加义务植树 http://cpc.people.com.cn/n1/2024/0409/c64387-40212131.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
守渡四十二载，方便乡亲出行（守望） http://cpc.people.com.cn/n1/2024/0409/c64387-40212132.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
新型消费拓宽经济增长空间（评论员观察） http://cpc.people.com.cn/n1/2024/0409/c64387-40212121.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
让革命文物焕发恒久光彩（人民时评） http://cpc.people.com.cn/n1/2024/0409/c64387-40212124.html 2024年04月09日 彭晓玲、唐宋 人民网－人民日报
二十届中央第三轮巡视对象公布 http://cpc.people.com.cn/n1/2024/0409/c64387-40212073.html 2024年04月09日 唐宋、任一林 人民网－人民日报
公开通报3起整治形式主义为基层减负典型问题 http://cpc.people.com.cn/n1/2024/0409/c64387-40212074.html 2024年04月09日 唐宋、任一林 人民网－人民日报
专设鼓励民营企业参与特许经营条款 http://cpc.people.com.cn/n1/2024/0409/c64387-40212075.html 2024年04月09日 唐宋、任一林 人民网－人民日报
2023年快递服务满意度和时限准时率得到较大提升 http://cpc.people.com.cn/n1/2024/0409/c64387-40212076.html 2024年04月09日 唐宋、任一林 人民网－人民日报
共同推动世界人权事业健康发展 http://cpc.people.com.cn/n1/2024/0409/c64387-40212060.html 2024年04月09日 唐宋、任一林 人民网－人民日报
中国新能源产业助力全球绿色低碳转型（和音） http://cpc.people.com.cn/n1/2024/0409/c64387-40212061.html 2024年04月09日 唐宋、任一林 人民网－人民日报
中泰互免签证促进旅游业升温 http://cpc.people.com.cn/n1/2024/0409/c64387-40212062.html 2024年04月09日 唐宋、任一林 人民网－人民日报
苏里南总统单多吉将访华 http://cpc.people.com.cn/n1/2024/0409/c64387-40212063.html 2024年04月09日 唐宋、任一林 人民网－人民日报
外交部回应东南亚国家高层访华热潮 http://cpc.people.com.cn/n1/2024/0409/c64387-40212064.html 2024年04月09日 唐宋、任一林 人民网－人民日报
外交部介绍苏里南总统访华安排 http://cpc.people.com.cn/n1/2024/0409/c64387-40212065.html 2024年04月09日 唐宋、任一林 人民网－人民日报
奋力把宏伟蓝图变成美好现实（推动高质量发展·权威发布） http://cpc.people.com.cn/n1/2024/0409/c64387-40212054.html 2024年04月09日 唐宋、任一林 人民网－人民日报
实施新一轮千亿斤粮食产能提升行动（政策解读） http://cpc.people.com.cn/n1/2024/0409/c64387-40212055.html 2024年04月09日 唐宋、任一林 人民网－人民日报
逾2000处大中型灌区开始春灌 http://cpc.people.com.cn/n1/2024/0409/c64387-40212056.html 2024年04月09日 唐宋、任一林 人民网－人民日报
“种地心里更有底啦”（春耕进行时） http://cpc.people.com.cn/n1/2024/0409/c64387-40212057.html 2024年04月09日 唐宋、任一林 人民网－人民日报
以新质生产力强劲推动高质量发展 http://cpc.people.com.cn/n1/2024/0409/c64387-40212041.html 2024年04月09日 唐宋、任一林 人民网－人民日报
无党派人士议政建言座谈会在京召开 石泰峰出席并讲话 http://cpc.people.com.cn/n1/2024/0408/c64387-40211783.html 2024年04月08日 陈羽、秦华 新华网
全国人大常委会部分组成人员参加义务植树 http://cpc.people.com.cn/n1/2024/0408/c64387-40211764.html 2024年04月08日 陈羽、秦华 新华网
二十届中央第三轮巡视对象公布 http://cpc.people.com.cn/n1/2024/0408/c64387-40211766.html 2024年04月08日 陈羽、秦华 新华网
脑机接口技术应用前景广阔（科技视点·走近新质生产力⑥） http://cpc.people.com.cn/n1/2024/0408/c64387-40211368.html 2024年04月08日 彭晓玲、唐宋 人民网－人民日报
新质生产力本身就是绿色生产力（创新谈） http://cpc.people.com.cn/n1/2024/0408/c64387-40211369.html 2024年04月08日 彭晓玲、唐宋 人民网－人民日报
税费支持  金融加力（财经眼·财税金融助力发展新质生产力） http://cpc.people.com.cn/n1/2024/0408/c64387-40211367.html 2024年04月08日 彭晓玲、唐宋 人民网－人民日报
开展国际农业合作  共享农业发展机遇（镜头里的共建“一带一路”） http://cpc.people.com.cn/n1/2024/0408/c64387-40211366.html 2024年04月08日 彭晓玲、唐宋 人民网－人民日报
非洲多国探索发展氢能产业（国际视点） http://cpc.people.com.cn/n1/2024/0408/c64387-40211360.html 2024年04月08日 彭晓玲、唐宋 人民网－人民日报
安理会第二七二八号决议法律约束力不容挑战 http://cpc.people.com.cn/n1/2024/0408/c64387-40211361.html 2024年04月08日 彭晓玲、唐宋 人民网－人民日报
西班牙积极促进经济增长 http://cpc.people.com.cn/n1/2024/0408/c64387-40211362.html 2024年04月08日 彭晓玲、唐宋 人民网－人民日报
泰国多举措提升水果产销 http://cpc.people.com.cn/n1/2024/0408/c64387-40211363.html 2024年04月08日 彭晓玲、唐宋 人民网－人民日报
世界粮食计划署警告空前饥荒或席卷苏丹 http://cpc.people.com.cn/n1/2024/0408/c64387-40211364.html 2024年04月08日 彭晓玲、唐宋 人民网－人民日报
优化备赛训练  促进成绩提升 http://cpc.people.com.cn/n1/2024/0408/c64387-40211351.html 2024年04月08日 彭晓玲、唐宋 人民网－人民日报
筑牢北疆绿色长城（美丽中国） http://cpc.people.com.cn/n1/2024/0408/c64387-40211346.html 2024年04月08日 彭晓玲、唐宋 人民网－人民日报
北江发生今年第1号洪水 http://cpc.people.com.cn/n1/2024/0408/c64387-40211347.html 2024年04月08日 彭晓玲、唐宋 人民网－人民日报
我国首次细化固体废物种类 http://cpc.people.com.cn/n1/2024/0408/c64387-40211348.html 2024年04月08日 彭晓玲、唐宋 人民网－人民日报
山西太原全力增加车位供给（让老百姓过上更好的日子） http://cpc.people.com.cn/n1/2024/0408/c64387-40211342.html 2024年04月08日 彭晓玲、唐宋 人民网－人民日报
钱逢和，帮助乡亲们种好粮（以普通人的平凡书写不平凡的人生） http://cpc.people.com.cn/n1/2024/0408/c64387-40211343.html 2024年04月08日 彭晓玲、唐宋 人民网－人民日报
河北推进紧密型县域医共体建设 http://cpc.people.com.cn/n1/2024/0408/c64387-40211344.html 2024年04月08日 彭晓玲、唐宋 人民网－人民日报
湖南娄底签约12项重点医疗项目 http://cpc.people.com.cn/n1/2024/0408/c64387-40211345.html 2024年04月08日 彭晓玲、唐宋 人民网－人民日报
以木为基  雕刻光阴（护文化遗产  彰时代新义） http://cpc.people.com.cn/n1/2024/0408/c64387-40211337.html 2024年04月08日 彭晓玲、王潇潇 人民网－人民日报
“春游河北赏百花”活动启动 http://cpc.people.com.cn/n1/2024/0408/c64387-40211338.html 2024年04月08日 彭晓玲、王潇潇 人民网－人民日报
西藏落实百余个重点文物保护项目 http://cpc.people.com.cn/n1/2024/0408/c64387-40211339.html 2024年04月08日 彭晓玲、王潇潇 人民网－人民日报
城区测定有标尺  数据统计更科学（深阅读） http://cpc.people.com.cn/n1/2024/0408/c64387-40211330.html 2024年04月08日 唐宋、任一林 人民网－人民日报
137名部级领导干部在京参加义务植树活动 http://cpc.people.com.cn/n1/2024/0408/c64387-40211331.html 2024年04月08日 唐宋、任一林 人民网－人民日报
“快慢之间”的价值旨归（人民论坛） http://cpc.people.com.cn/n1/2024/0408/c64387-40211332.html 2024年04月08日 唐宋、任一林 人民网－人民日报
全国边检机关共保障518.9万人次中外人员出入境 http://cpc.people.com.cn/n1/2024/0408/c64387-40211333.html 2024年04月08日 唐宋、任一林 人民网－人民日报
我国地级及以上城市（不含直辖市）已建立城市房地产融资协调机制 http://cpc.people.com.cn/n1/2024/0408/c64387-40211334.html 2024年04月08日 唐宋、任一林 人民网－人民日报
我国强制性产品认证已覆盖16大类100种产品 http://cpc.people.com.cn/n1/2024/0408/c64387-40211335.html 2024年04月08日 唐宋、任一林 人民网－人民日报
传承手工技艺  共创幸福生活（在现场） http://cpc.people.com.cn/n1/2024/0408/c64387-40211336.html 2024年04月08日 唐宋、任一林 人民网－人民日报
更好统筹能源高质量发展和高水平安全（人民要论） http://cpc.people.com.cn/n1/2024/0408/c64387-40211328.html 2024年04月08日 彭晓玲、王潇潇 人民网－人民日报
指引百年大党开辟自我革命新境界 http://cpc.people.com.cn/n1/2024/0408/c64387-40211329.html 2024年04月08日 彭晓玲、王潇潇 人民网－人民日报
为建设美丽中国增绿添彩（新时代画卷） http://cpc.people.com.cn/n1/2024/0408/c64387-40211325.html 2024年04月08日 彭晓玲、王潇潇 人民网－人民日报
集聚创新资源  塑造产业优势（经济聚焦） http://cpc.people.com.cn/n1/2024/0408/c64387-40211317.html 2024年04月08日 彭晓玲、任一林 人民网－人民日报
推动文化与消费深度融合（微经济） http://cpc.people.com.cn/n1/2024/0408/c64387-40211318.html 2024年04月08日 彭晓玲、王潇潇 人民网－人民日报
工信部规范电动自行车行业发展 http://cpc.people.com.cn/n1/2024/0408/c64387-40211319.html 2024年04月08日 彭晓玲、王潇潇 人民网－人民日报
央行设立科技创新和技术改造再贷款 http://cpc.people.com.cn/n1/2024/0408/c64387-40211320.html 2024年04月08日 彭晓玲、王潇潇 人民网－人民日报
坚持创新引领  锻造大国重器（走企业，看高质量发展） http://cpc.people.com.cn/n1/2024/0408/c64387-40211321.html 2024年04月08日 彭晓玲、王潇潇 人民网－人民日报
我国外汇储备规模为32457亿美元 http://cpc.people.com.cn/n1/2024/0408/c64387-40211322.html 2024年04月08日 彭晓玲、王潇潇 人民网－人民日报
第一批中国向古巴提供的紧急粮食援助完成交接 http://cpc.people.com.cn/n1/2024/0408/c64387-40211315.html 2024年04月08日 唐宋、任一林 人民网－人民日报
中企承建坦桑尼亚体育场项目开工 http://cpc.people.com.cn/n1/2024/0408/c64387-40211316.html 2024年04月08日 唐宋、任一林 人民网－人民日报
为促进马来西亚东西海岸互联互通贡献力量（共建“一带一路”·第一现场） http://cpc.people.com.cn/n1/2024/0408/c64387-40211308.html 2024年04月08日 唐宋、任一林 人民网－人民日报
各国人权发展道路的多样性应得到尊重（国际论坛） http://cpc.people.com.cn/n1/2024/0408/c64387-40211309.html 2024年04月08日 唐宋、任一林 人民网－人民日报
密克罗尼西亚联邦总统西米纳4月5日至12日对我国进行国事访问 http://cpc.people.com.cn/n1/2024/0408/c64387-40211310.html 2024年04月08日 唐宋、任一林 人民网－人民日报
传承深厚友谊  同行发展之路（大使随笔·推动构建人类命运共同体） http://cpc.people.com.cn/n1/2024/0408/c64387-40211311.html 2024年04月08日 唐宋、任一林 人民网－人民日报
俄罗斯外长拉夫罗夫将访华 http://cpc.people.com.cn/n1/2024/0408/c64387-40211312.html 2024年04月08日 唐宋、任一林 人民网－人民日报
阿联酋将出任第二十一届东博会特邀合作伙伴 http://cpc.people.com.cn/n1/2024/0408/c64387-40211313.html 2024年04月08日 唐宋、任一林 人民网－人民日报
中泰两国将合作开展月球探测任务 http://cpc.people.com.cn/n1/2024/0408/c64387-40211314.html 2024年04月08日 唐宋、任一林 人民网－人民日报
统筹兼顾，增强系统思维（评论员观察） http://cpc.people.com.cn/n1/2024/0408/c64387-40211303.html 2024年04月08日 彭晓玲、任一林 人民网－人民日报
保护好、传承好宝贵典籍版本（中国道路中国梦·奋力跑好历史的接力棒） http://cpc.people.com.cn/n1/2024/0408/c64387-40211304.html 2024年04月08日 彭晓玲、任一林 人民网－人民日报
传统文化何以融入现代生活（现场评论） http://cpc.people.com.cn/n1/2024/0408/c64387-40211305.html 2024年04月08日 彭晓玲、任一林 人民网－人民日报
练好内功是关键（纵横） http://cpc.people.com.cn/n1/2024/0408/c64387-40211306.html 2024年04月08日 彭晓玲、任一林 人民网－人民日报
按下农村电商发展“快进键”（人民时评） http://cpc.people.com.cn/n1/2024/0408/c64387-40211307.html 2024年04月08日 彭晓玲、任一林 人民网－人民日报
支付服务优化  便利性提升（一线调研） http://cpc.people.com.cn/n1/2024/0408/c64387-40211294.html 2024年04月08日 唐宋、任一林 人民网－人民日报
维护招标投标领域公平竞争 http://cpc.people.com.cn/n1/2024/0408/c64387-40211295.html 2024年04月08日 唐宋、任一林 人民网－人民日报
港珠澳大桥游火热 http://cpc.people.com.cn/n1/2024/0408/c64387-40211296.html 2024年04月08日 唐宋、任一林 人民网－人民日报
在全党开展党纪学习教育 http://cpc.people.com.cn/n1/2024/0408/c64387-40211287.html 2024年04月08日 唐宋、任一林 人民网－人民日报
一场田埂上的农技答问（春耕进行时） http://cpc.people.com.cn/n1/2024/0408/c64387-40211288.html 2024年04月08日 唐宋、任一林 人民网－人民日报
今春文旅消费活力足 http://cpc.people.com.cn/n1/2024/0408/c64387-40211289.html 2024年04月08日 唐宋、任一林 人民网－人民日报
2023年全国演出市场总体经济规模达739.94亿元（新数据 新看点） http://cpc.people.com.cn/n1/2024/0408/c64387-40211290.html 2024年04月08日 唐宋、任一林 人民网－人民日报
坚持创新引领  锻造大国重器（走企业，看高质量发展） http://cpc.people.com.cn/n1/2024/0408/c64387-40211291.html 2024年04月08日 唐宋、任一林 人民网－人民日报
中共中央办公厅印发《通知》 在全党开展党纪学习教育 http://cpc.people.com.cn/n1/2024/0407/c64387-40211084.html 2024年04月07日 陈羽、任一林 新华网
青绿山水画卷 传承东方美学（坚持“两创” 铸就辉煌） http://cpc.people.com.cn/n1/2024/0407/c64387-40210608.html 2024年04月07日 彭晓玲、任一林 人民网－人民日报
蚕桑农文旅融合发展呈现勃勃生机 http://cpc.people.com.cn/n1/2024/0407/c64387-40210606.html 2024年04月07日 彭晓玲、任一林 人民网－人民日报
增进民生福祉  提升幸福指数（濠江在线） http://cpc.people.com.cn/n1/2024/0407/c64387-40210605.html 2024年04月07日 彭晓玲、任一林 人民网－人民日报
以文化人  薪火相传（在一线） http://cpc.people.com.cn/n1/2024/0407/c64387-40210603.html 2024年04月07日 彭晓玲、任一林 人民网－人民日报
实实在在地把职业教育搞好（深聚焦） http://cpc.people.com.cn/n1/2024/0407/c64387-40210602.html 2024年04月07日 彭晓玲、任一林 人民网－人民日报
重大工程科技含量持续攀升（新时代画卷） http://cpc.people.com.cn/n1/2024/0407/c64387-40210600.html 2024年04月07日 彭晓玲、任一林 人民网－人民日报
“我们的收成一年比一年好”（新时代中非合作） http://cpc.people.com.cn/n1/2024/0407/c64387-40210593.html 2024年04月07日 彭晓玲、任一林 人民网－人民日报
携手共建中古命运共同体（大使随笔·推动构建人类命运共同体） http://cpc.people.com.cn/n1/2024/0407/c64387-40210594.html 2024年04月07日 彭晓玲、任一林 人民网－人民日报
“为不同文化交流对话搭建桥梁” http://cpc.people.com.cn/n1/2024/0407/c64387-40210595.html 2024年04月07日 彭晓玲、任一林 人民网－人民日报
2024“投资中国”专场推介活动在德国举行 http://cpc.people.com.cn/n1/2024/0407/c64387-40210596.html 2024年04月07日 彭晓玲、任一林 人民网－人民日报
2024年澜湄合作专项基金泰国项目启动 http://cpc.people.com.cn/n1/2024/0407/c64387-40210597.html 2024年04月07日 彭晓玲、任一林 人民网－人民日报
中国海军第四十五批护航编队结束对莫桑比克友好访问 http://cpc.people.com.cn/n1/2024/0407/c64387-40210598.html 2024年04月07日 彭晓玲、任一林 人民网－人民日报
中企亮相巴西防务展 http://cpc.people.com.cn/n1/2024/0407/c64387-40210599.html 2024年04月07日 彭晓玲、任一林 人民网－人民日报
创新就业服务  高效对接需求（深阅读） http://cpc.people.com.cn/n1/2024/0407/c64387-40210585.html 2024年04月07日 彭晓玲、任一林 人民网－人民日报
今年我国将基本实现道路客运电子客票全覆盖 http://cpc.people.com.cn/n1/2024/0407/c64387-40210586.html 2024年04月07日 彭晓玲、任一林 人民网－人民日报
推进城市全域数字化转型 http://cpc.people.com.cn/n1/2024/0407/c64387-40210587.html 2024年04月07日 彭晓玲、任一林 人民网－人民日报
寻觅中华文脉  感悟厚重历史 http://cpc.people.com.cn/n1/2024/0407/c64387-40210588.html 2024年04月07日 彭晓玲、任一林 人民网－人民日报
129万人次植树增绿美化家园 http://cpc.people.com.cn/n1/2024/0407/c64387-40210589.html 2024年04月07日 彭晓玲、任一林 人民网－人民日报
湖南加快发展优势产业 http://cpc.people.com.cn/n1/2024/0407/c64387-40210579.html 2024年04月07日 彭晓玲、任一林 人民网－人民日报
挺立深水勇创新 http://cpc.people.com.cn/n1/2024/0407/c64387-40210580.html 2024年04月07日 彭晓玲、任一林 人民网－人民日报
前两月新设外商投资企业同比增长34.9%（新数据 新看点） http://cpc.people.com.cn/n1/2024/0407/c64387-40210581.html 2024年04月07日 彭晓玲、任一林 人民网－人民日报
一份电费单里的春耕新图景（春耕进行时） http://cpc.people.com.cn/n1/2024/0407/c64387-40210582.html 2024年04月07日 彭晓玲、任一林 人民网－人民日报
全社会跨区域人员流动量预计超7.5亿人次 http://cpc.people.com.cn/n1/2024/0407/c64387-40210583.html 2024年04月07日 彭晓玲、任一林 人民网－人民日报
讲好革命纪念馆里的思政课 http://cpc.people.com.cn/n1/2024/0406/c64387-40210282.html 2024年04月06日 万鹏、代晓灵 人民网－人民日报
弘扬英烈精神  汲取奋进力量 http://cpc.people.com.cn/n1/2024/0406/c64387-40210281.html 2024年04月06日 万鹏、代晓灵 人民网－人民日报
重大工程项目建设加快推进（新时代画卷） http://cpc.people.com.cn/n1/2024/0406/c64387-40210280.html 2024年04月06日 万鹏、代晓灵 人民网－人民日报
我驻外使馆举行清明祭扫活动 http://cpc.people.com.cn/n1/2024/0406/c64387-40210278.html 2024年04月06日 万鹏、代晓灵 人民网－人民日报
中美商贸工作组举行第一次副部长级会议 http://cpc.people.com.cn/n1/2024/0406/c64387-40210279.html 2024年04月06日 万鹏、代晓灵 人民网－人民日报
加强革命文物保护利用（深阅读） http://cpc.people.com.cn/n1/2024/0406/c64387-40210274.html 2024年04月06日 万鹏、代晓灵 人民网－人民日报
“扩绿、兴绿、护绿并举”（人民论坛） http://cpc.people.com.cn/n1/2024/0406/c64387-40210275.html 2024年04月06日 万鹏、代晓灵 人民网－人民日报
启动全国质量品牌提升示范区创建活动 http://cpc.people.com.cn/n1/2024/0406/c64387-40210276.html 2024年04月06日 万鹏、代晓灵 人民网－人民日报
把红色基因传承下去 http://cpc.people.com.cn/n1/2024/0406/c64387-40210270.html 2024年04月06日 万鹏、代晓灵 人民网－人民日报
统筹扩大内需和深化供给侧结构性改革（继续巩固和增强经济回升向好态势·两会之后看落实②） http://cpc.people.com.cn/n1/2024/0406/c64387-40210271.html 2024年04月06日 万鹏、代晓灵 人民网－人民日报
前两月规上轻工企业实现利润同比增长26.9%（新数据 新看点） http://cpc.people.com.cn/n1/2024/0406/c64387-40210272.html 2024年04月06日 万鹏、代晓灵 人民网－人民日报
守护传统节日的精神内核（今日谈） http://cpc.people.com.cn/n1/2024/0406/c64387-40210273.html 2024年04月06日 万鹏、代晓灵 人民网－人民日报
共青团中央、全国少工委开展“清明祭英烈”主题教育实践活动 http://cpc.people.com.cn/n1/2024/0405/c64387-40210174.html 2024年04月05日 彭晓玲、秦华 人民网-中国共产党新闻网
以数字之光点亮演艺之美（坚持“两创”·关注新时代文艺） http://cpc.people.com.cn/n1/2024/0405/c64387-40210107.html 2024年04月05日 彭晓玲、黄子娟 人民网－人民日报
全力打好“三北”工程三大标志性战役（人与自然） http://cpc.people.com.cn/n1/2024/0405/c64387-40210106.html 2024年04月05日 彭晓玲、黄子娟 人民网－人民日报
水清岸绿  保护传承（国家文化公园） http://cpc.people.com.cn/n1/2024/0405/c64387-40210105.html 2024年04月05日 彭晓玲、黄子娟 人民网－人民日报
进一步把粮食单产和品质提上去（新时代画卷） http://cpc.people.com.cn/n1/2024/0405/c64387-40210102.html 2024年04月05日 彭晓玲、黄子娟 人民网－人民日报
“给当地人民带来了实实在在的好处”（共建“一带一路”·第一现场） http://cpc.people.com.cn/n1/2024/0405/c64387-40210096.html 2024年04月05日 彭晓玲、黄子娟 人民网－人民日报
朝着构建人类命运共同体的崇高目标前进（国际论坛） http://cpc.people.com.cn/n1/2024/0405/c64387-40210097.html 2024年04月05日 彭晓玲、黄子娟 人民网－人民日报
我驻外使馆和维和部队举行清明祭扫活动 http://cpc.people.com.cn/n1/2024/0405/c64387-40210098.html 2024年04月05日 彭晓玲、黄子娟 人民网－人民日报
“传递了巴中两国人民的深情厚谊” http://cpc.people.com.cn/n1/2024/0405/c64387-40210099.html 2024年04月05日 彭晓玲、黄子娟 人民网－人民日报
推动农村因地制宜发展风电（政策解读） http://cpc.people.com.cn/n1/2024/0405/c64387-40210091.html 2024年04月05日 彭晓玲、黄子娟 人民网－人民日报
不断增厚我们的“绿色家底”（人民论坛） http://cpc.people.com.cn/n1/2024/0405/c64387-40210092.html 2024年04月05日 彭晓玲、黄子娟 人民网－人民日报
甲辰年清明公祭轩辕黄帝典礼在陕西举行 http://cpc.people.com.cn/n1/2024/0405/c64387-40210093.html 2024年04月05日 彭晓玲、黄子娟 人民网－人民日报
汽车贷款政策调整 http://cpc.people.com.cn/n1/2024/0405/c64387-40210094.html 2024年04月05日 彭晓玲、黄子娟 人民网－人民日报
开展“清明祭英烈”主题教育实践活动 http://cpc.people.com.cn/n1/2024/0405/c64387-40210095.html 2024年04月05日 彭晓玲、黄子娟 人民网－人民日报
弘扬英烈精神  汲取奋进力量 http://cpc.people.com.cn/n1/2024/0405/c64387-40210084.html 2024年04月05日 彭晓玲、黄子娟 人民网－人民日报
服务进出口总额同比增长22.8%（新数据 新看点） http://cpc.people.com.cn/n1/2024/0405/c64387-40210085.html 2024年04月05日 彭晓玲、黄子娟 人民网－人民日报
如何推动粮油作物大面积单产提升（政策问答·推进乡村全面振兴） http://cpc.people.com.cn/n1/2024/0405/c64387-40210086.html 2024年04月05日 彭晓玲、黄子娟 人民网－人民日报
服务“一老一幼” 增进民生福祉 http://cpc.people.com.cn/n1/2024/0405/c64387-40210087.html 2024年04月05日 彭晓玲、黄子娟 人民网－人民日报
缅怀先烈  接续奋斗（今日谈） http://cpc.people.com.cn/n1/2024/0405/c64387-40210088.html 2024年04月05日 彭晓玲、黄子娟 人民网－人民日报
全国道路交通总体平稳有序 http://cpc.people.com.cn/n1/2024/0405/c64387-40210089.html 2024年04月05日 彭晓玲、黄子娟 人民网－人民日报
北京建成国家森林城市（深度观察） http://cpc.people.com.cn/n1/2024/0404/c64387-40209757.html 2024年04月04日 刘圆圆、陈羽 人民网－人民日报
青山环抱古村落  溪水潺潺绕家园（走进传统村落） http://cpc.people.com.cn/n1/2024/0404/c64387-40209753.html 2024年04月04日 刘圆圆、陈羽 人民网－人民日报
加强耕地保护  提升耕地质量（新时代画卷） http://cpc.people.com.cn/n1/2024/0404/c64387-40209751.html 2024年04月04日 刘圆圆、陈羽 人民网－人民日报
在交流互鉴中促进全球人权事业不断发展 http://cpc.people.com.cn/n1/2024/0404/c64387-40209740.html 2024年04月04日 刘圆圆、陈羽 人民网－人民日报
外交部发言人就中美元首通话有关情况答记者问 http://cpc.people.com.cn/n1/2024/0404/c64387-40209741.html 2024年04月04日 刘圆圆、陈羽 人民网－人民日报
密克罗尼西亚联邦总统西米纳将访华 http://cpc.people.com.cn/n1/2024/0404/c64387-40209742.html 2024年04月04日 刘圆圆、陈羽 人民网－人民日报
中阿合作提升码头数智化水平 http://cpc.people.com.cn/n1/2024/0404/c64387-40209743.html 2024年04月04日 刘圆圆、陈羽 人民网－人民日报
外交部谈密克罗尼西亚联邦总统访华 http://cpc.people.com.cn/n1/2024/0404/c64387-40209744.html 2024年04月04日 刘圆圆、陈羽 人民网－人民日报
“投资中国”2024年首场海外活动在丹麦举行 http://cpc.people.com.cn/n1/2024/0404/c64387-40209745.html 2024年04月04日 刘圆圆、陈羽 人民网－人民日报
泰国公主诗琳通将访华 http://cpc.people.com.cn/n1/2024/0404/c64387-40209746.html 2024年04月04日 刘圆圆、陈羽 人民网－人民日报
外国企业投资中国、深耕中国也必将赢在中国 http://cpc.people.com.cn/n1/2024/0404/c64387-40209747.html 2024年04月04日 刘圆圆、陈羽 人民网－人民日报
中方代表强烈谴责伊朗驻叙利亚外交馆舍遭袭 http://cpc.people.com.cn/n1/2024/0404/c64387-40209748.html 2024年04月04日 刘圆圆、陈羽 人民网－人民日报
部署开展群众身边不正之风和腐败问题集中整治 http://cpc.people.com.cn/n1/2024/0404/c64387-40209730.html 2024年04月04日 刘圆圆、陈羽 人民网－人民日报
全面建设社会主义现代化大都市（推动高质量发展·权威发布） http://cpc.people.com.cn/n1/2024/0404/c64387-40209731.html 2024年04月04日 刘圆圆、陈羽 人民网－人民日报
快递新规施行首月稳价提速（政策解读） http://cpc.people.com.cn/n1/2024/0404/c64387-40209732.html 2024年04月04日 刘圆圆、陈羽 人民网－人民日报
龙潭长江大桥合龙 http://cpc.people.com.cn/n1/2024/0404/c64387-40209733.html 2024年04月04日 刘圆圆、陈羽 人民网－人民日报
国台办：大陆有关方面高度关注台湾地震灾情 http://cpc.people.com.cn/n1/2024/0404/c64387-40209735.html 2024年04月04日 刘圆圆、陈羽 人民网－人民日报
前两月全国造船完工量同比增95.4% http://cpc.people.com.cn/n1/2024/0404/c64387-40209737.html 2024年04月04日 刘圆圆、陈羽 人民网－人民日报
2023年全国生态环境质量稳定改善（新数据 新看点） http://cpc.people.com.cn/n1/2024/0404/c64387-40209727.html 2024年04月04日 刘圆圆、陈羽 人民网－人民日报
为建设美丽中国增绿添彩 http://cpc.people.com.cn/n1/2024/0404/c64387-40209728.html 2024年04月04日 刘圆圆、陈羽 人民网－人民日报
争当绿色使者、生态先锋（今日谈） http://cpc.people.com.cn/n1/2024/0404/c64387-40209729.html 2024年04月04日 刘圆圆、陈羽 人民网－人民日报
将人民记在心间  将平安镌刻在祖国山川 http://cpc.people.com.cn/n1/2024/0403/c64387-40209035.html 2024年04月03日 王潇潇、唐宋 人民网－人民日报
久久为功与只争朝夕（人民论坛） http://cpc.people.com.cn/n1/2024/0403/c64387-40209036.html 2024年04月03日 王潇潇、唐宋 人民网－人民日报
1422名戍边民警获颁国家移民管理机构戍守边疆纪念章 http://cpc.people.com.cn/n1/2024/0403/c64387-40209037.html 2024年04月03日 王潇潇、唐宋 人民网－人民日报
地方政府预决算信息基本实现应公开尽公开 http://cpc.people.com.cn/n1/2024/0403/c64387-40209038.html 2024年04月03日 王潇潇、唐宋 人民网－人民日报
坚定不移推进长江十年禁渔（权威发布） http://cpc.people.com.cn/n1/2024/0403/c64387-40209039.html 2024年04月03日 王潇潇、唐宋 人民网－人民日报
中肯基础设施合作结出累累硕果（共建“一带一路”·第一现场） http://cpc.people.com.cn/n1/2024/0403/c64387-40209029.html 2024年04月03日 王潇潇、唐宋 人民网－人民日报
积极参与和引领人工智能全球治理（和音） http://cpc.people.com.cn/n1/2024/0403/c64387-40209030.html 2024年04月03日 王潇潇、唐宋 人民网－人民日报
助力中泰数字经济共同发展 http://cpc.people.com.cn/n1/2024/0403/c64387-40209031.html 2024年04月03日 王潇潇、唐宋 人民网－人民日报
“了解真实而美丽的中国” http://cpc.people.com.cn/n1/2024/0403/c64387-40209032.html 2024年04月03日 王潇潇、唐宋 人民网－人民日报
“从北京到巴黎——中法艺术家奥林匹克行”中国艺术大展参展活动发布 http://cpc.people.com.cn/n1/2024/0403/c64387-40209033.html 2024年04月03日 王潇潇、唐宋 人民网－人民日报
奋力谱写“强富美高”新篇章（推动高质量发展·权威发布） http://cpc.people.com.cn/n1/2024/0403/c64387-40209019.html 2024年04月03日 王潇潇、唐宋 人民网－人民日报
一部手机“装”着7000亩农田（春耕进行时） http://cpc.people.com.cn/n1/2024/0403/c64387-40209020.html 2024年04月03日 王潇潇、唐宋 人民网－人民日报
医保药品信息哪里查（政策解读·问答） http://cpc.people.com.cn/n1/2024/0403/c64387-40209021.html 2024年04月03日 王潇潇、唐宋 人民网－人民日报
我国去年数据生产总量预计超32ZB http://cpc.people.com.cn/n1/2024/0403/c64387-40209022.html 2024年04月03日 王潇潇、唐宋 人民网－人民日报
山西全面推进文化遗产活化利用 http://cpc.people.com.cn/n1/2024/0403/c64387-40209007.html 2024年04月03日 王潇潇、唐宋 人民网－人民日报
前两月软件业务收入同比增11.9%（新数据 新看点） http://cpc.people.com.cn/n1/2024/0403/c64387-40209008.html 2024年04月03日 王潇潇、唐宋 人民网－人民日报
国办印发《统筹融资信用服务平台建设提升中小微企业融资便利水平实施方案》 http://cpc.people.com.cn/n1/2024/0403/c64387-40209009.html 2024年04月03日 王潇潇、唐宋 人民网－人民日报
我国慕课上线超7.68万门（新数据 新看点） http://cpc.people.com.cn/n1/2024/0403/c64387-40209010.html 2024年04月03日 王潇潇、唐宋 人民网－人民日报
生活服务业加快数字化转型（消费视窗·推动生活服务扩容提质） http://cpc.people.com.cn/n1/2024/0403/c64387-40208959.html 2024年04月03日 彭静、唐宋 人民网－人民日报
“钢铁驼队”带货忙（产经观察·走物流枢纽  看发展热度） http://cpc.people.com.cn/n1/2024/0403/c64387-40208958.html 2024年04月03日 彭静、唐宋 人民网－人民日报
选调生小刘驻村记 http://cpc.people.com.cn/n1/2024/0403/c64387-40208956.html 2024年04月03日 彭静、唐宋 人民网－人民日报
以效能政府建设抓落实  推进海南自贸港高质量发展 http://cpc.people.com.cn/n1/2024/0403/c64387-40208951.html 2024年04月03日 彭静、唐宋 人民网－人民日报
多跑一趟，多一分担当（一线行走） http://cpc.people.com.cn/n1/2024/0403/c64387-40208952.html 2024年04月03日 彭静、唐宋 人民网－人民日报
推动理论宣讲进基层 http://cpc.people.com.cn/n1/2024/0403/c64387-40208953.html 2024年04月03日 彭静、唐宋 人民网－人民日报
山东建立“法院+保险协会”常态化诉调对接机制 http://cpc.people.com.cn/n1/2024/0403/c64387-40208954.html 2024年04月03日 彭静、唐宋 人民网－人民日报
各民主党派、无党派人士和党外知识分子、新的社会阶层人士学习习近平新时代中国特色社会主义思想体会摘编 http://cpc.people.com.cn/n1/2024/0403/c64387-40208947.html 2024年04月03日 彭静、唐宋 人民网－人民日报
“公转铁”，降本增效减排一举多得（经济聚焦） http://cpc.people.com.cn/n1/2024/0403/c64387-40208945.html 2024年04月03日 彭静、唐宋 人民网－人民日报
中国美丽乡村休闲旅游行（春季）推介活动举行 http://cpc.people.com.cn/n1/2024/0403/c64387-40208946.html 2024年04月03日 彭静、唐宋 人民网－人民日报
植物工厂有了智慧大脑（大数据观察·关注设施农业） http://cpc.people.com.cn/n1/2024/0403/c64387-40208937.html 2024年04月03日 彭静、唐宋 人民网－人民日报
第三十届中国国际广播电视信息网络展览会将举行 http://cpc.people.com.cn/n1/2024/0403/c64387-40208938.html 2024年04月03日 彭静、唐宋 人民网－人民日报
扎实做好今年城市排水防涝工作 http://cpc.people.com.cn/n1/2024/0403/c64387-40208939.html 2024年04月03日 彭静、唐宋 人民网－人民日报
税务总局开展“便民办税春风行动” http://cpc.people.com.cn/n1/2024/0403/c64387-40208940.html 2024年04月03日 彭静、唐宋 人民网－人民日报
中老铁路进出口货物量创新高 http://cpc.people.com.cn/n1/2024/0403/c64387-40208941.html 2024年04月03日 彭静、唐宋 人民网－人民日报
工业反哺农业  发展动能更足 http://cpc.people.com.cn/n1/2024/0403/c64387-40208942.html 2024年04月03日 彭静、唐宋 人民网－人民日报
2024年第一季度见义勇为勇士榜发布 http://cpc.people.com.cn/n1/2024/0403/c64387-40208936.html 2024年04月03日 彭静、唐宋 人民网－人民日报
减负出实效  治理提效能（大家谈） http://cpc.people.com.cn/n1/2024/0403/c64387-40208931.html 2024年04月03日 彭静、唐宋 人民网－人民日报
多能互补，保障能源安全（现场评论） http://cpc.people.com.cn/n1/2024/0403/c64387-40208932.html 2024年04月03日 彭静、唐宋 人民网－人民日报
消除痛点，向深化改革要动力（评论员观察） http://cpc.people.com.cn/n1/2024/0403/c64387-40208933.html 2024年04月03日 彭静、唐宋 人民网－人民日报
让工业遗址焕发新活力（纵横） http://cpc.people.com.cn/n1/2024/0403/c64387-40208934.html 2024年04月03日 彭静、唐宋 人民网－人民日报
文艺出海  文化扬帆（金台随笔） http://cpc.people.com.cn/n1/2024/0403/c64387-40208935.html 2024年04月03日 彭静、唐宋 人民网－人民日报
2024高质量党建促进高质量发展案例征集活动启动 http://cpc.people.com.cn/n1/2024/0402/c64387-40208727.html 2024年04月02日 梁秋坪、邓志慧 
民盟中央在甘肃开展社会服务活动 http://cpc.people.com.cn/n1/2024/0402/c64387-40208543.html 2024年04月02日 王珂园、宋美琪 中国民主同盟
为民办实事要有大局观（人民论坛） http://cpc.people.com.cn/n1/2024/0402/c64387-40208245.html 2024年04月02日 王潇潇、唐宋 人民网－人民日报
十四届全国人大二次会议9235件代表建议统一交办 http://cpc.people.com.cn/n1/2024/0402/c64387-40208246.html 2024年04月02日 王潇潇、唐宋 人民网－人民日报
备案审查工作座谈会暨备案审查工作培训班在重庆举行 http://cpc.people.com.cn/n1/2024/0402/c64387-40208247.html 2024年04月02日 王潇潇、唐宋 人民网－人民日报
找准产业方向  聚焦创新发展（走企业，看高质量发展） http://cpc.people.com.cn/n1/2024/0402/c64387-40208248.html 2024年04月02日 王潇潇、唐宋 人民网－人民日报
增强干事本领  激发乡村活力 http://cpc.people.com.cn/n1/2024/0402/c64387-40208249.html 2024年04月02日 王潇潇、唐宋 人民网－人民日报
马英九率台青抵达广东交流参访  宋涛在深圳会见 http://cpc.people.com.cn/n1/2024/0402/c64387-40208250.html 2024年04月02日 王潇潇、唐宋 人民网－人民日报
“加强人民友好往来是我们共同的愿望”（大道之行） http://cpc.people.com.cn/n1/2024/0402/c64387-40208232.html 2024年04月02日 王潇潇、唐宋 人民网－人民日报
唱衰论调改变不了中国经济长期向好大势（国际论坛） http://cpc.people.com.cn/n1/2024/0402/c64387-40208233.html 2024年04月02日 王潇潇、唐宋 人民网－人民日报
“对中国经济发展前景充满信心” http://cpc.people.com.cn/n1/2024/0402/c64387-40208234.html 2024年04月02日 王潇潇、唐宋 人民网－人民日报
“期待与中企开展更多水资源保护合作” http://cpc.people.com.cn/n1/2024/0402/c64387-40208235.html 2024年04月02日 王潇潇、唐宋 人民网－人民日报
做携手构建人类命运共同体的行动派（大使随笔·推动构建人类命运共同体） http://cpc.people.com.cn/n1/2024/0402/c64387-40208236.html 2024年04月02日 王潇潇、唐宋 人民网－人民日报
老挝、越南、东帝汶外长将访华 http://cpc.people.com.cn/n1/2024/0402/c64387-40208237.html 2024年04月02日 王潇潇、唐宋 人民网－人民日报
中方遇难人员遗体告别仪式在巴基斯坦举行 http://cpc.people.com.cn/n1/2024/0402/c64387-40208238.html 2024年04月02日 王潇潇、唐宋 人民网－人民日报
在巴基斯坦恐袭事件中遇难同胞遗体送回祖国 http://cpc.people.com.cn/n1/2024/0402/c64387-40208239.html 2024年04月02日 王潇潇、唐宋 人民网－人民日报
分线“满月”探横琴（经济新方位） http://cpc.people.com.cn/n1/2024/0402/c64387-40208229.html 2024年04月02日 王潇潇、唐宋 人民网－人民日报
境外采购商预注册量明显增长（权威发布） http://cpc.people.com.cn/n1/2024/0402/c64387-40208230.html 2024年04月02日 王潇潇、唐宋 人民网－人民日报
春茶全面采摘上市（记录中国） http://cpc.people.com.cn/n1/2024/0402/c64387-40208231.html 2024年04月02日 王潇潇、唐宋 人民网－人民日报
让种粮也能够致富 http://cpc.people.com.cn/n1/2024/0402/c64387-40208225.html 2024年04月02日 王潇潇、唐宋 人民网－人民日报
前两月交通运输业多项指标实现正增长（新数据 新看点） http://cpc.people.com.cn/n1/2024/0402/c64387-40208226.html 2024年04月02日 王潇潇、唐宋 人民网－人民日报
找准产业方向  聚焦创新发展（走企业，看高质量发展） http://cpc.people.com.cn/n1/2024/0402/c64387-40208227.html 2024年04月02日 王潇潇、唐宋 人民网－人民日报
玛尔挡水电站首台机组并网发电 http://cpc.people.com.cn/n1/2024/0402/c64387-40208228.html 2024年04月02日 王潇潇、唐宋 人民网－人民日报
国家医保医疗救助制度逐步完善 http://cpc.people.com.cn/n1/2024/0402/c64387-40208157.html 2024年04月02日 彭静、唐宋 人民网－人民日报
服务多做联动  办事少填材料（高效办成一件事） http://cpc.people.com.cn/n1/2024/0402/c64387-40208150.html 2024年04月02日 彭静、唐宋 人民网－人民日报
简化对投诉人的身份核验要求（法治聚焦） http://cpc.people.com.cn/n1/2024/0402/c64387-40208151.html 2024年04月02日 彭静、唐宋 人民网－人民日报
水果、畜禽肉、水产品不超过4层包装 http://cpc.people.com.cn/n1/2024/0402/c64387-40208152.html 2024年04月02日 彭静、唐宋 人民网－人民日报
线下政务“搬”线上，难在哪（一线行走） http://cpc.people.com.cn/n1/2024/0402/c64387-40208153.html 2024年04月02日 彭静、唐宋 人民网－人民日报
托育机构监控录像资料保存期不少于90天 http://cpc.people.com.cn/n1/2024/0402/c64387-40208154.html 2024年04月02日 彭静、唐宋 人民网－人民日报
生态优先  绿色发展（新时代画卷） http://cpc.people.com.cn/n1/2024/0402/c64387-40208149.html 2024年04月02日 彭静、唐宋 人民网－人民日报
在博鳌，近距离体验“近零碳”（探访） http://cpc.people.com.cn/n1/2024/0402/c64387-40208146.html 2024年04月02日 彭静、唐宋 人民网－人民日报
去年依法办结行政复议案件29.3万件 http://cpc.people.com.cn/n1/2024/0402/c64387-40208147.html 2024年04月02日 彭静、唐宋 人民网－人民日报
在专业领域就要“斤斤计较”（中国道路中国梦·与时代一起奔跑） http://cpc.people.com.cn/n1/2024/0402/c64387-40208141.html 2024年04月02日 彭静、唐宋 人民网－人民日报
共促网络文学佳作迭出（人民时评） http://cpc.people.com.cn/n1/2024/0402/c64387-40208142.html 2024年04月02日 彭静、唐宋 人民网－人民日报
高科技不可少  “老套路”也要用（纵横） http://cpc.people.com.cn/n1/2024/0402/c64387-40208143.html 2024年04月02日 彭静、唐宋 人民网－人民日报
保护红树林  算好长久账（现场评论） http://cpc.people.com.cn/n1/2024/0402/c64387-40208144.html 2024年04月02日 彭静、唐宋 人民网－人民日报
外贸“开门红”彰显经济韧性（评论员观察） http://cpc.people.com.cn/n1/2024/0402/c64387-40208140.html 2024年04月02日 彭静、唐宋 人民网－人民日报
政策合力促进机器人产业蓬勃发展（财经眼·财税金融助力发展新质生产力） http://cpc.people.com.cn/n1/2024/0401/c64387-40207535.html 2024年04月01日 彭静、王潇潇 人民网－人民日报
让正能量更强劲、主旋律更高昂 http://cpc.people.com.cn/n1/2024/0401/c64387-40207532.html 2024年04月01日 彭静、王潇潇 人民网－人民日报
线下只进一门  线上一网通办（高效办成一件事） http://cpc.people.com.cn/n1/2024/0401/c64387-40207524.html 2024年04月01日 彭静、王潇潇 人民网－人民日报
七日无理由退货，哪些情况不适用（新闻看法） http://cpc.people.com.cn/n1/2024/0401/c64387-40207525.html 2024年04月01日 彭静、王潇潇 人民网－人民日报
产业联合党委带动致富增收 http://cpc.people.com.cn/n1/2024/0401/c64387-40207526.html 2024年04月01日 彭静、王潇潇 人民网－人民日报
以高质量党建引领互联网企业发展 http://cpc.people.com.cn/n1/2024/0401/c64387-40207527.html 2024年04月01日 彭静、王潇潇 人民网－人民日报
3月份制造业采购经理指数重返景气区间 http://cpc.people.com.cn/n1/2024/0401/c64387-40207516.html 2024年04月01日 彭静、王潇潇 人民网－人民日报
去年我国原煤产量超四十七亿吨 http://cpc.people.com.cn/n1/2024/0401/c64387-40207517.html 2024年04月01日 彭静、王潇潇 人民网－人民日报
广州推动城市东部中心高质量发展 http://cpc.people.com.cn/n1/2024/0401/c64387-40207518.html 2024年04月01日 彭静、王潇潇 人民网－人民日报
全力以赴，成就一流（评论员观察） http://cpc.people.com.cn/n1/2024/0401/c64387-40207508.html 2024年04月01日 彭静、王潇潇 人民网－人民日报
适老微改造，养老大文章（微观） http://cpc.people.com.cn/n1/2024/0401/c64387-40207509.html 2024年04月01日 彭静、王潇潇 人民网－人民日报
微短剧如何“短而精”（人民时评） http://cpc.people.com.cn/n1/2024/0401/c64387-40207510.html 2024年04月01日 彭静、王潇潇 人民网－人民日报
来论 http://cpc.people.com.cn/n1/2024/0401/c64387-40207511.html 2024年04月01日 彭静、王潇潇 人民网－人民日报
让罕见病患者更有“医靠”（暖闻热评） http://cpc.people.com.cn/n1/2024/0401/c64387-40207512.html 2024年04月01日 彭静、王潇潇 人民网－人民日报
整治涉企侵权信息乱象 http://cpc.people.com.cn/n1/2024/0401/c64387-40207461.html 2024年04月01日 王潇潇、唐宋 人民网－人民日报
推动入境游便利化 http://cpc.people.com.cn/n1/2024/0401/c64387-40207462.html 2024年04月01日 王潇潇、唐宋 人民网－人民日报
督促各地区各部门坚持过紧日子不放松 http://cpc.people.com.cn/n1/2024/0401/c64387-40207463.html 2024年04月01日 王潇潇、唐宋 人民网－人民日报
强化机制建设  巩固减负成果（深阅读） http://cpc.people.com.cn/n1/2024/0401/c64387-40207459.html 2024年04月01日 王潇潇、邓志慧 人民网－人民日报
自觉做良好政治生态的有力促进者（人民论坛） http://cpc.people.com.cn/n1/2024/0401/c64387-40207460.html 2024年04月01日 王潇潇、唐宋 人民网－人民日报
深化中斯合作  造福两国人民 http://cpc.people.com.cn/n1/2024/0401/c64387-40207451.html 2024年04月01日 王潇潇、唐宋 人民网－人民日报
投资中国  深耕中国  赢在中国（和音） http://cpc.people.com.cn/n1/2024/0401/c64387-40207452.html 2024年04月01日 王潇潇、唐宋 人民网－人民日报
“为稳定国际局势发挥重要作用” http://cpc.people.com.cn/n1/2024/0401/c64387-40207453.html 2024年04月01日 王潇潇、唐宋 人民网－人民日报
“始终对中国市场充满信心” http://cpc.people.com.cn/n1/2024/0401/c64387-40207454.html 2024年04月01日 王潇潇、唐宋 人民网－人民日报
报告显示：中国在五大领域高质量发展成绩显著 http://cpc.people.com.cn/n1/2024/0401/c64387-40207455.html 2024年04月01日 王潇潇、唐宋 人民网－人民日报
“架起艺术对话、人文交流的桥梁” http://cpc.people.com.cn/n1/2024/0401/c64387-40207456.html 2024年04月01日 王潇潇、唐宋 人民网－人民日报
留客村迎客来 http://cpc.people.com.cn/n1/2024/0401/c64387-40207449.html 2024年04月01日 王潇潇、唐宋 人民网－人民日报
一座高水平现代化城市正在拔地而起 http://cpc.people.com.cn/n1/2024/0401/c64387-40207448.html 2024年04月01日 王潇潇、唐宋 人民网－人民日报
推动设备和消费品更新换代（政策解读） http://cpc.people.com.cn/n1/2024/0401/c64387-40207447.html 2024年04月01日 王潇潇、唐宋 人民网－人民日报
攀“高”向“新”  培育发展新动能（走企业，看高质量发展） http://cpc.people.com.cn/n1/2024/0401/c64387-40207443.html 2024年04月01日 王潇潇、唐宋 人民网－人民日报
我国新增6处世界地质公园（新数据 新看点） http://cpc.people.com.cn/n1/2024/0401/c64387-40207442.html 2024年04月01日 王潇潇、唐宋 人民网－人民日报
3月制造业采购经理指数为50.8%（新数据 新看点） http://cpc.people.com.cn/n1/2024/0401/c64387-40207441.html 2024年04月01日 王潇潇、唐宋 人民网－人民日报
必须坚持人民至上 http://cpc.people.com.cn/n1/2024/0401/c64387-40207439.html 2024年04月01日 王潇潇、唐宋 人民网－人民日报
帮助更多退役军人就业创业（老兵新传） http://cpc.people.com.cn/n1/2024/0331/c64387-40207025.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
基层通信 http://cpc.people.com.cn/n1/2024/0331/c64387-40207024.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
传承英烈精神  激发奋进力量（金台点兵） http://cpc.people.com.cn/n1/2024/0331/c64387-40207023.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
向着提升新质战斗力冲锋（强军路上） http://cpc.people.com.cn/n1/2024/0331/c64387-40207022.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
扎根基层争做技术型人才（青春日记） http://cpc.people.com.cn/n1/2024/0331/c64387-40207021.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
做新时代雷锋之歌的领唱者（青春之声） http://cpc.people.com.cn/n1/2024/0331/c64387-40207020.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
守护千年瑰宝  贡献青春力量（青春派） http://cpc.people.com.cn/n1/2024/0331/c64387-40207019.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
木耳基地采摘忙（在现场） http://cpc.people.com.cn/n1/2024/0331/c64387-40207018.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
雪域高原盛开民族团结之花 http://cpc.people.com.cn/n1/2024/0331/c64387-40207017.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
二〇二四中国网络媒体论坛在云南昆明举行 http://cpc.people.com.cn/n1/2024/0331/c64387-40207016.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
广纳民意  提升检察机关公信力（深阅读） http://cpc.people.com.cn/n1/2024/0331/c64387-40207015.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
中企投资阿联酋海上油田二期实现首油投产 http://cpc.people.com.cn/n1/2024/0331/c64387-40207010.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
“推动了互利共赢的国际合作” http://cpc.people.com.cn/n1/2024/0331/c64387-40207009.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
第三届中泰文化与翻译出版论坛在曼谷举行 http://cpc.people.com.cn/n1/2024/0331/c64387-40207008.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
中国—上合组织应急医学合作中心在京成立 http://cpc.people.com.cn/n1/2024/0331/c64387-40207007.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
为应对全球性挑战贡献亚洲力量 http://cpc.people.com.cn/n1/2024/0331/c64387-40207006.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
“2024釜山上海电影展”在韩国开幕 http://cpc.people.com.cn/n1/2024/0331/c64387-40207005.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
中国—中亚机制秘书处在西安启动 http://cpc.people.com.cn/n1/2024/0331/c64387-40207004.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
分享中国式现代化机遇（国际论坛·读懂中国·读懂中国式现代化） http://cpc.people.com.cn/n1/2024/0331/c64387-40207003.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
“中国的乡村文化活动越来越丰富、越来越精彩” http://cpc.people.com.cn/n1/2024/0331/c64387-40207002.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
“农机帮大忙，效率有保障”（春耕进行时） http://cpc.people.com.cn/n1/2024/0331/c64387-40206991.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
加强科技创新  培育发展新质生产力的新动能 http://cpc.people.com.cn/n1/2024/0331/c64387-40206990.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
当好中国式现代化建设的坚定行动派、实干家 http://cpc.people.com.cn/n1/2024/0331/c64387-40206989.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
持续抓好防沙治沙工作（今日谈） http://cpc.people.com.cn/n1/2024/0331/c64387-40206982.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
西部陆海新通道班列运输集装箱货物超20万标准箱 http://cpc.people.com.cn/n1/2024/0331/c64387-40206981.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
在宁波舟山港感受经济脉动 http://cpc.people.com.cn/n1/2024/0331/c64387-40206980.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
二十届中央第二轮巡视完成反馈 http://cpc.people.com.cn/n1/2024/0331/c64387-40206979.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
前两月社会物流总额达55.4万亿元（新数据 新看点） http://cpc.people.com.cn/n1/2024/0331/c64387-40206978.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
持续推动经济实现质的有效提升和量的合理增长（继续巩固和增强经济回升向好态势·两会之后看落实①） http://cpc.people.com.cn/n1/2024/0331/c64387-40206977.html 2024年03月31日 彭静、梁秋坪 人民网－人民日报
使行政法规更加符合社会实际需要（权威发布） http://cpc.people.com.cn/n1/2024/0330/c64387-40206745.html 2024年03月30日 王子锋、宋美琪 人民网－人民日报
谷子播种记（在现场） http://cpc.people.com.cn/n1/2024/0330/c64387-40206744.html 2024年03月30日 王子锋、宋美琪 人民网－人民日报
绿色发展格局初步形成 http://cpc.people.com.cn/n1/2024/0330/c64387-40206743.html 2024年03月30日 王子锋、宋美琪 人民网－人民日报
第七届进博会推介会在荷兰举办 http://cpc.people.com.cn/n1/2024/0330/c64387-40206742.html 2024年03月30日 王子锋、宋美琪 人民网－人民日报
外交部介绍中方工作组赴巴基斯坦处置达苏恐袭事件情况 http://cpc.people.com.cn/n1/2024/0330/c64387-40206741.html 2024年03月30日 王子锋、宋美琪 人民网－人民日报
印度尼西亚当选总统、大印尼行动党总主席普拉博沃将访华 http://cpc.people.com.cn/n1/2024/0330/c64387-40206740.html 2024年03月30日 王子锋、宋美琪 人民网－人民日报
中美关系能够有一个更好的未来（钟声） http://cpc.people.com.cn/n1/2024/0330/c64387-40206739.html 2024年03月30日 王子锋、宋美琪 人民网－人民日报
汇聚团结合作、共谋发展的合力（聚焦博鳌亚洲论坛2024年年会） http://cpc.people.com.cn/n1/2024/0330/c64387-40206738.html 2024年03月30日 王子锋、宋美琪 人民网－人民日报
中华人民共和国和斯里兰卡民主社会主义共和国联合声明 http://cpc.people.com.cn/n1/2024/0330/c64387-40206737.html 2024年03月30日 王子锋、宋美琪 人民网－人民日报
前两月规上电子信息制造业增加值增长14.6% http://cpc.people.com.cn/n1/2024/0330/c64387-40206736.html 2024年03月30日 王子锋、宋美琪 人民网－人民日报
我国国际收支运行总体稳健 http://cpc.people.com.cn/n1/2024/0330/c64387-40206735.html 2024年03月30日 王子锋、宋美琪 人民网－人民日报
在推进中国式现代化建设中走在前列（推动高质量发展·权威发布） http://cpc.people.com.cn/n1/2024/0330/c64387-40206734.html 2024年03月30日 王子锋、宋美琪 人民网－人民日报
让大流量澎湃正能量 http://cpc.people.com.cn/n1/2024/0330/c64387-40206733.html 2024年03月30日 王子锋、宋美琪 人民网－人民日报
习主席的小客人访华日记：“跟中国人民心很近” http://cpc.people.com.cn/n1/2024/0330/c64387-40206732.html 2024年03月30日 王子锋、宋美琪 人民网－人民日报
加快推动发展方式绿色低碳转型（今日谈） http://cpc.people.com.cn/n1/2024/0330/c64387-40206731.html 2024年03月30日 王子锋、宋美琪 人民网－人民日报
我国企业发明专利产业化率超50%（新数据 新看点） http://cpc.people.com.cn/n1/2024/0330/c64387-40206730.html 2024年03月30日 王子锋、宋美琪 人民网－人民日报
第十二届全国少数民族传统体育运动会将增设攀椰竞速竞赛项目 http://cpc.people.com.cn/n1/2024/0329/c64387-40206382.html 2024年03月29日 彭静、秦华 人民网
人民日报整版探讨：加强涉外法治建设 http://cpc.people.com.cn/n1/2024/0329/c64387-40206123.html 2024年03月29日 李枫、任一林 人民网－人民日报
彭丽媛会见德国伯乐中文合唱团师生代表 http://cpc.people.com.cn/n1/2024/0329/c64387-40206117.html 2024年03月29日 彭晓玲、王潇潇 人民网－人民日报
广西优秀舞台艺术作品晋京展演活动启幕 http://cpc.people.com.cn/n1/2024/0329/c64387-40206107.html 2024年03月29日 彭晓玲、王潇潇 人民网－人民日报
持续提升水资源节约集约利用水平（权威发布） http://cpc.people.com.cn/n1/2024/0329/c64387-40206106.html 2024年03月29日 彭晓玲、王潇潇 人民网－人民日报
守卫全市森林资源消防安全 http://cpc.people.com.cn/n1/2024/0329/c64387-40206105.html 2024年03月29日 彭晓玲、王潇潇 人民网－人民日报
西藏发展特色产业推进乡村全面振兴 http://cpc.people.com.cn/n1/2024/0329/c64387-40206104.html 2024年03月29日 彭晓玲、王潇潇 人民网－人民日报
《中国共产党党内法规选编（2017—2022）》出版发行 http://cpc.people.com.cn/n1/2024/0329/c64387-40206103.html 2024年03月29日 彭晓玲、王潇潇 人民网－人民日报
自觉做勇于担当作为的不懈奋斗者（人民论坛） http://cpc.people.com.cn/n1/2024/0329/c64387-40206102.html 2024年03月29日 彭晓玲、王潇潇 人民网－人民日报
感受群众文艺的新变化新活力（坚持“两创”·关注新时代文艺） http://cpc.people.com.cn/n1/2024/0329/c64387-40206098.html 2024年03月29日 李枫、任一林 人民网－人民日报
多措并举加强职业技能培训（多棱镜） http://cpc.people.com.cn/n1/2024/0329/c64387-40206095.html 2024年03月29日 李枫、任一林 人民网－人民日报
“公交便民驿栈”受欢迎（体验·民生一线观察） http://cpc.people.com.cn/n1/2024/0329/c64387-40206094.html 2024年03月29日 李枫、任一林 人民网－人民日报
中医药国际认可度和影响力持续提升 http://cpc.people.com.cn/n1/2024/0329/c64387-40206086.html 2024年03月29日 李枫、任一林 人民网－人民日报
中国海军第四十五批护航编队结束对坦桑尼亚友好访问 http://cpc.people.com.cn/n1/2024/0329/c64387-40206082.html 2024年03月29日 彭晓玲、任一林 人民网－人民日报
打造区域合作的“金色样板”（大使随笔） http://cpc.people.com.cn/n1/2024/0329/c64387-40206081.html 2024年03月29日 彭晓玲、任一林 人民网－人民日报
中荷商务部门负责人就光刻机输华等议题交换意见 http://cpc.people.com.cn/n1/2024/0329/c64387-40206080.html 2024年03月29日 彭晓玲、任一林 人民网－人民日报
“全球安全倡议具有远见和智慧” http://cpc.people.com.cn/n1/2024/0329/c64387-40206079.html 2024年03月29日 彭晓玲、任一林 人民网－人民日报
保护知识产权  促进可持续发展 http://cpc.people.com.cn/n1/2024/0329/c64387-40206078.html 2024年03月29日 彭晓玲、王潇潇 人民网－人民日报
共建和平安宁、繁荣美丽、友好共生的亚洲家园（聚焦博鳌亚洲论坛2024年年会） http://cpc.people.com.cn/n1/2024/0329/c64387-40206077.html 2024年03月29日 彭晓玲、王潇潇 人民网－人民日报
让更多科技成果扎根田间（话说新农村） http://cpc.people.com.cn/n1/2024/0329/c64387-40206076.html 2024年03月29日 李枫、任一林 人民网－人民日报
让乡亲们就地过上现代文明生活（推进乡村全面振兴不断取得新成效） http://cpc.people.com.cn/n1/2024/0329/c64387-40206075.html 2024年03月29日 李枫、任一林 人民网－人民日报
“通过电影感受中国发展，了解中国文化” http://cpc.people.com.cn/n1/2024/0329/c64387-40206073.html 2024年03月29日 李枫、任一林 人民网－人民日报
贯彻实施《国家标准化发展纲要》 http://cpc.people.com.cn/n1/2024/0329/c64387-40206070.html 2024年03月29日 彭晓玲、王潇潇 人民网－人民日报
智慧农业赋能春耕春管（春耕进行时） http://cpc.people.com.cn/n1/2024/0329/c64387-40206069.html 2024年03月29日 彭晓玲、王潇潇 人民网－人民日报
持续提升城市能级和核心竞争力（推动高质量发展·权威发布） http://cpc.people.com.cn/n1/2024/0329/c64387-40206068.html 2024年03月29日 彭晓玲、王潇潇 人民网－人民日报
为全民健身搭建更广阔平台（体坛观澜） http://cpc.people.com.cn/n1/2024/0329/c64387-40206067.html 2024年03月29日 李枫、任一林 人民网－人民日报
保持热爱，奔跑在春天里（竞技观察） http://cpc.people.com.cn/n1/2024/0329/c64387-40206066.html 2024年03月29日 李枫、任一林 人民网－人民日报
让“民情日记”更有生命力（今日谈） http://cpc.people.com.cn/n1/2024/0329/c64387-40206064.html 2024年03月29日 彭晓玲、王潇潇 人民网－人民日报
西藏发展特色产业推进乡村全面振兴 http://cpc.people.com.cn/n1/2024/0329/c64387-40206063.html 2024年03月29日 彭晓玲、王潇潇 人民网－人民日报
前两月规上工业企业利润同比增长10.2%（新数据 新看点） http://cpc.people.com.cn/n1/2024/0329/c64387-40206061.html 2024年03月29日 彭晓玲、王潇潇 人民网－人民日报
“背篓专线”上的温暖（民生观） http://cpc.people.com.cn/n1/2024/0329/c64387-40206060.html 2024年03月29日 李枫、任一林 人民网－人民日报
</pre>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs" id="cell-id=949637c1-a712-4a94-929b-7e13bd8cf2a1">
<div class="jp-Cell-inputWrapper" tabindex="0">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="cm-editor cm-s-jupyter">
<div class="highlight hl-ipython3"><pre><span></span> 
</pre></div>
</div>
</div>
</div>
</div>
</div>
</main>
</body>
</html>
